@productcraft/mail 0.2.2 → 0.2.4

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.
package/dist/index.d.cts CHANGED
@@ -2001,7 +2001,10 @@ interface paths {
2001
2001
  path?: never;
2002
2002
  cookie?: never;
2003
2003
  };
2004
- /** Get one webhook endpoint (without its secret). */
2004
+ /**
2005
+ * Get one webhook endpoint (without its secret).
2006
+ * @description The endpoint's URL, subscription, on/off state, failure streak and the last 4 characters of its signing secret. The full secret is only returned when the endpoint is created or its secret is rotated.
2007
+ */
2005
2008
  get: operations["WebhooksController_mail_workspace_getEndpoint"];
2006
2009
  put?: never;
2007
2010
  post?: never;
@@ -2106,7 +2109,10 @@ interface paths {
2106
2109
  path?: never;
2107
2110
  cookie?: never;
2108
2111
  };
2109
- /** Get one webhook event with every delivery attempt. */
2112
+ /**
2113
+ * Get one webhook event with every delivery attempt.
2114
+ * @description The event as it was sent (`type`, `data`) and every delivery attempt to every endpoint, with its trigger, HTTP status, error and the start of the response body. Use it to debug a receiver, then `replay` to send it again.
2115
+ */
2110
2116
  get: operations["WebhooksController_mail_workspace_getEvent"];
2111
2117
  put?: never;
2112
2118
  post?: never;
@@ -2752,7 +2758,10 @@ interface components {
2752
2758
  visibility: "public" | "private";
2753
2759
  };
2754
2760
  CreateWebhookEndpointDto: {
2755
- /** @example Production receiver */
2761
+ /**
2762
+ * @description A label for people.
2763
+ * @example Production receiver
2764
+ */
2756
2765
  description?: string | null;
2757
2766
  /**
2758
2767
  * Format: uuid
@@ -2761,8 +2770,9 @@ interface components {
2761
2770
  */
2762
2771
  domain_id?: string | null;
2763
2772
  /**
2764
- * @description Create it switched off.
2773
+ * @description Send `false` to create it switched off.
2765
2774
  * @default true
2775
+ * @example true
2766
2776
  */
2767
2777
  enabled: boolean;
2768
2778
  /**
@@ -4304,15 +4314,19 @@ interface components {
4304
4314
  pagination: components["schemas"]["PaginationDto"];
4305
4315
  };
4306
4316
  ListWebhookEndpointsResponseDto: {
4317
+ /** @description The endpoints, newest first. */
4307
4318
  data: components["schemas"]["WebhookEndpointDto"][];
4308
4319
  /** @description Always one page (an endpoint limit applies). */
4309
4320
  pagination: components["schemas"]["WebhookPaginationDto"];
4310
4321
  };
4311
4322
  ListWebhookEventTypesResponseDto: {
4323
+ /** @description Every event type this product sends. */
4312
4324
  data: components["schemas"]["WebhookEventTypeDto"][];
4313
4325
  };
4314
4326
  ListWebhookEventsResponseDto: {
4327
+ /** @description The events, newest first. */
4315
4328
  data: components["schemas"]["WebhookEventDto"][];
4329
+ /** @description The cursor for the next page. */
4316
4330
  pagination: components["schemas"]["WebhookPaginationDto"];
4317
4331
  };
4318
4332
  LookupDmarcDto: {
@@ -4385,7 +4399,7 @@ interface components {
4385
4399
  reason: string;
4386
4400
  };
4387
4401
  /** @description Error codes this API returns (open set: a client must accept codes it does not know; new codes are not a breaking change). Each is documented at https://productcraft.co/docs/errors#<code>. */
4388
- MailErrorCode: ("BAD_REQUEST" | "VALIDATION_ERROR" | "UNAUTHORIZED" | "PAYMENT_REQUIRED" | "FORBIDDEN" | "NOT_FOUND" | "METHOD_NOT_ALLOWED" | "NOT_ACCEPTABLE" | "REQUEST_TIMEOUT" | "CONFLICT" | "GONE" | "PRECONDITION_FAILED" | "PAYLOAD_TOO_LARGE" | "UNSUPPORTED_MEDIA_TYPE" | "UNPROCESSABLE_ENTITY" | "PRECONDITION_REQUIRED" | "RATE_LIMITED" | "INTERNAL_SERVER_ERROR" | "NOT_IMPLEMENTED" | "BAD_GATEWAY" | "SERVICE_UNAVAILABLE" | "GATEWAY_TIMEOUT" | "SERVICE_NOT_ENABLED" | "INVALID_CREDENTIALS" | "SESSION_REVOKED" | "MCP_NOT_PERMITTED" | "MCP_WORKSPACE_MISMATCH" | "PAK_NOT_PERMITTED" | "ACTIONS_NOT_GRANTABLE" | "IDEMPOTENCY_KEY_REUSE" | "IDEMPOTENCY_KEY_REQUIRED" | "WEBHOOK_ENDPOINT_LIMIT" | "WEBHOOK_ENDPOINT_NOT_FOUND" | "WEBHOOK_ENDPOINT_NOT_SUBSCRIBED" | "WEBHOOK_EVENT_NOT_FOUND" | "WEBHOOK_EVENT_TYPE_UNKNOWN" | "AUDIENCE_REQUIRED" | "BROADCAST_AUDIENCE_EMPTY" | "BROADCAST_CONTENT_CONFLICT" | "BROADCAST_NOT_CANCELABLE" | "BROADCAST_NOT_DELETABLE" | "BROADCAST_NOT_DRAFT" | "BROADCAST_NOT_FOUND" | "BROADCAST_NOT_READY" | "CAPABILITY_NOT_VERIFIED" | "CONTACT_EXISTS" | "CONTACT_LIMIT" | "CONTACT_NOT_FOUND" | "CONTACT_PROPERTY_EXISTS" | "CONTACT_PROPERTY_LIMIT" | "CONTACT_PROPERTY_NOT_FOUND" | "DATE_RANGE_BEYOND_RETENTION" | "DATE_RANGE_TOO_WIDE" | "DATE_WINDOW_TOO_WIDE" | "DKIM_KEY_MISSING" | "DNS_CONFLICTS" | "DOMAIN_CONNECT_DISABLED" | "DOMAIN_CONNECT_MAIL_FROM_LABEL" | "DOMAIN_CONNECT_NOT_SENDING" | "DOMAIN_CONNECT_UNAVAILABLE" | "DOMAIN_HAS_MAILBOXES" | "DOMAIN_NOT_FOUND" | "EMAIL_UNAVAILABLE" | "FROM_DOMAIN_MISMATCH" | "IDEMPOTENCY_KEY_CONFLICTS_WITH_ROW" | "IMPORT_IN_PROGRESS" | "IMPORT_NOT_FOUND" | "IMPORT_TOO_LARGE" | "INVALID_CAPABILITIES" | "INVALID_CONTACT_PROPERTY_VALUE" | "INVALID_CSV" | "INVALID_DATE" | "INVALID_DATE_RANGE" | "INVALID_DATE_WINDOW" | "INVALID_FORMAT" | "INVALID_FROM_ADDRESS" | "INVALID_SEGMENT_RULE" | "INVALID_TIMEZONE" | "INVALID_ZONE" | "MAIL_FROM_HOST_IN_USE" | "MAIL_FROM_NOT_SENDING" | "PROVIDER_ERROR" | "PROVIDER_PERMISSION_DENIED" | "PROVIDER_TOKEN_REJECTED" | "PROVIDER_UNAVAILABLE" | "PROVIDER_ZONE_NOT_FOUND" | "RECIPIENT_SUPPRESSED" | "REGION_NOT_AVAILABLE" | "RESERVED_PROPERTY_KEY" | "SEGMENT_EXISTS" | "SEGMENT_LIMIT" | "SEGMENT_NOT_FOUND" | "SEGMENT_RULE_BASED" | "SEGMENT_TYPE_FIXED" | "SES_IDENTITY_DELETE_FAILED" | "SHARE_LINK_NOT_FOUND" | "SMTP_AUTH_PARTIAL" | "SMTP_CONFIG_NOT_FOUND" | "SMTP_PASSWORD_REQUIRED" | "TEMPLATE_DATA_INVALID" | "TEMPLATE_KIND_NOT_SENDABLE" | "TEMPLATE_NOT_FOUND" | "TEMPLATE_RENDER_FAILED" | "TLS_ENFORCED_NOT_AVAILABLE" | "TOPIC_EXISTS" | "TOPIC_LIMIT" | "TOPIC_NOT_FOUND" | "TRACKING_NOT_AVAILABLE" | "UNKNOWN_CONTACT_PROPERTY" | "UNSUBSCRIBE_LINK_REQUIRED" | "domain_not_verified_by_provider" | "from_domain_not_verified" | "no_default_sender" | "sender_domain_not_in_workspace") | string;
4402
+ MailErrorCode: ("BAD_REQUEST" | "VALIDATION_ERROR" | "UNAUTHORIZED" | "PAYMENT_REQUIRED" | "FORBIDDEN" | "NOT_FOUND" | "METHOD_NOT_ALLOWED" | "NOT_ACCEPTABLE" | "REQUEST_TIMEOUT" | "CONFLICT" | "GONE" | "PRECONDITION_FAILED" | "PAYLOAD_TOO_LARGE" | "UNSUPPORTED_MEDIA_TYPE" | "UNPROCESSABLE_ENTITY" | "PRECONDITION_REQUIRED" | "RATE_LIMITED" | "INTERNAL_SERVER_ERROR" | "NOT_IMPLEMENTED" | "BAD_GATEWAY" | "SERVICE_UNAVAILABLE" | "GATEWAY_TIMEOUT" | "SERVICE_NOT_ENABLED" | "INVALID_CREDENTIALS" | "SESSION_REVOKED" | "MCP_NOT_PERMITTED" | "MCP_WORKSPACE_MISMATCH" | "PAK_NOT_PERMITTED" | "ACTIONS_NOT_GRANTABLE" | "IDEMPOTENCY_KEY_REUSE" | "IDEMPOTENCY_KEY_REQUIRED" | "IDEMPOTENCY_IN_PROGRESS" | "WEBHOOK_ENDPOINT_LIMIT" | "WEBHOOK_ENDPOINT_NOT_FOUND" | "WEBHOOK_ENDPOINT_NOT_SUBSCRIBED" | "WEBHOOK_EVENT_NOT_FOUND" | "WEBHOOK_EVENT_TYPE_UNKNOWN" | "AUDIENCE_REQUIRED" | "BROADCAST_AUDIENCE_EMPTY" | "BROADCAST_CONTENT_CONFLICT" | "BROADCAST_NOT_CANCELABLE" | "BROADCAST_NOT_DELETABLE" | "BROADCAST_NOT_DRAFT" | "BROADCAST_NOT_FOUND" | "BROADCAST_NOT_READY" | "CAPABILITY_NOT_VERIFIED" | "CONTACT_EXISTS" | "CONTACT_LIMIT" | "CONTACT_NOT_FOUND" | "CONTACT_PROPERTY_EXISTS" | "CONTACT_PROPERTY_LIMIT" | "CONTACT_PROPERTY_NOT_FOUND" | "DATE_RANGE_BEYOND_RETENTION" | "DATE_RANGE_TOO_WIDE" | "DATE_WINDOW_TOO_WIDE" | "DKIM_KEY_MISSING" | "DNS_CONFLICTS" | "DOMAIN_CONNECT_DISABLED" | "DOMAIN_CONNECT_MAIL_FROM_LABEL" | "DOMAIN_CONNECT_NOT_SENDING" | "DOMAIN_CONNECT_UNAVAILABLE" | "DOMAIN_HAS_MAILBOXES" | "DOMAIN_NOT_FOUND" | "EMAIL_UNAVAILABLE" | "FROM_DOMAIN_MISMATCH" | "IDEMPOTENCY_KEY_CONFLICTS_WITH_ROW" | "IMPORT_IN_PROGRESS" | "IMPORT_NOT_FOUND" | "IMPORT_TOO_LARGE" | "INVALID_CAPABILITIES" | "INVALID_CONTACT_PROPERTY_VALUE" | "INVALID_CSV" | "INVALID_DATE" | "INVALID_DATE_RANGE" | "INVALID_DATE_WINDOW" | "INVALID_FORMAT" | "INVALID_FROM_ADDRESS" | "INVALID_SEGMENT_RULE" | "INVALID_TIMEZONE" | "INVALID_ZONE" | "MAIL_FROM_HOST_IN_USE" | "MAIL_FROM_NOT_SENDING" | "PROVIDER_ERROR" | "PROVIDER_PERMISSION_DENIED" | "PROVIDER_TOKEN_REJECTED" | "PROVIDER_UNAVAILABLE" | "PROVIDER_ZONE_NOT_FOUND" | "RECIPIENT_SUPPRESSED" | "REGION_NOT_AVAILABLE" | "RESERVED_PROPERTY_KEY" | "SEGMENT_EXISTS" | "SEGMENT_LIMIT" | "SEGMENT_NOT_FOUND" | "SEGMENT_RULE_BASED" | "SEGMENT_TYPE_FIXED" | "SES_IDENTITY_DELETE_FAILED" | "SHARE_LINK_NOT_FOUND" | "SMTP_AUTH_PARTIAL" | "SMTP_CONFIG_NOT_FOUND" | "SMTP_PASSWORD_REQUIRED" | "TEMPLATE_DATA_INVALID" | "TEMPLATE_KIND_NOT_SENDABLE" | "TEMPLATE_NOT_FOUND" | "TEMPLATE_RENDER_FAILED" | "TLS_ENFORCED_NOT_AVAILABLE" | "TOPIC_EXISTS" | "TOPIC_LIMIT" | "TOPIC_NOT_FOUND" | "TRACKING_NOT_AVAILABLE" | "UNKNOWN_CONTACT_PROPERTY" | "UNSUBSCRIBE_LINK_REQUIRED" | "domain_not_verified_by_provider" | "from_domain_not_verified" | "no_default_sender" | "sender_domain_not_in_workspace") | string;
4389
4403
  MailStatsInWindowDto: {
4390
4404
  /**
4391
4405
  * @description Bounce rate, 0 to 1: bounced / emails sent (sent, delivered, deferred, bounced, complained — narrower than `sent` above, which also counts failed and suppressed). Null when nothing was sent.
@@ -5363,6 +5377,7 @@ interface components {
5363
5377
  ReplayWebhookEventResponseDto: {
5364
5378
  /** @description One attempt per endpoint it was sent to. */
5365
5379
  attempts: components["schemas"]["WebhookDeliveryAttemptDto"][];
5380
+ /** @description The replayed event (the same id as the original). */
5366
5381
  event_id: string;
5367
5382
  };
5368
5383
  ResolvedBrandTokensDto: {
@@ -5402,6 +5417,7 @@ interface components {
5402
5417
  /**
5403
5418
  * @description Hours the previous secret keeps signing too (0 ends it now).
5404
5419
  * @default 24
5420
+ * @example 24
5405
5421
  */
5406
5422
  grace_hours: number;
5407
5423
  };
@@ -6032,20 +6048,34 @@ interface components {
6032
6048
  visibility?: "public" | "private";
6033
6049
  };
6034
6050
  UpdateWebhookEndpointDto: {
6051
+ /**
6052
+ * @description A new label; null clears it.
6053
+ * @example Production receiver
6054
+ */
6035
6055
  description?: string | null;
6036
6056
  /**
6037
6057
  * Format: uuid
6038
6058
  * @description Domain filter; null removes it. Not allowed on a legacy slot (its domain is what makes it one).
6039
6059
  */
6040
6060
  domain_id?: string | null;
6041
- /** @description Switch it on or off. Switching on also clears an automatic disable. */
6061
+ /**
6062
+ * @description Switch it on or off. Switching on also clears an automatic disable.
6063
+ * @example true
6064
+ */
6042
6065
  enabled?: boolean;
6043
- /** @description Replaces the subscription. Event types from `GET …/webhooks/event-types`. Empty or omitted means every event, including types added later. Older names (`message.sent`, `message.delivered`, `message.deferred`, `message.bounced`, `message.complained`, `message.failed`) are still accepted; an endpoint subscribed under one receives the event with that name as its `type`. */
6066
+ /**
6067
+ * @description Replaces the subscription. Event types from `GET …/webhooks/event-types`. Empty or omitted means every event, including types added later. Older names (`message.sent`, `message.delivered`, `message.deferred`, `message.bounced`, `message.complained`, `message.failed`) are still accepted; an endpoint subscribed under one receives the event with that name as its `type`.
6068
+ * @example [
6069
+ * "email.sent",
6070
+ * "email.delivered"
6071
+ * ]
6072
+ */
6044
6073
  event_types?: ("email.sent" | "email.delivered" | "email.delivery_delayed" | "email.bounced" | "email.complained" | "email.failed" | "email.suppressed" | "email.skipped" | "email.scheduled" | "email.canceled" | "email.opened" | "email.clicked" | "email.received" | "domain.created" | "domain.updated" | "domain.verified" | "domain.deleted" | "suppression.added" | "suppression.removed" | "sending_defaults.updated" | "contact.created" | "contact.updated" | "contact.deleted" | "message.sent" | "message.delivered" | "message.deferred" | "message.bounced" | "message.complained" | "message.failed")[];
6045
6074
  /** @description Replaces the subscription. Older name for `event_types`, accepted and returned until the legacy webhook routes are retired (Sunset: 2027-01-15). Send one of the two. */
6046
6075
  events?: ("email.sent" | "email.delivered" | "email.delivery_delayed" | "email.bounced" | "email.complained" | "email.failed" | "email.suppressed" | "email.skipped" | "email.scheduled" | "email.canceled" | "email.opened" | "email.clicked" | "email.received" | "domain.created" | "domain.updated" | "domain.verified" | "domain.deleted" | "suppression.added" | "suppression.removed" | "sending_defaults.updated" | "contact.created" | "contact.updated" | "contact.deleted" | "message.sent" | "message.delivered" | "message.deferred" | "message.bounced" | "message.complained" | "message.failed")[];
6047
6076
  /**
6048
6077
  * Format: uri
6078
+ * @description A new absolute https:// URL on a public host.
6049
6079
  * @example https://api.acme.com/webhooks
6050
6080
  */
6051
6081
  url?: string;
@@ -6153,26 +6183,47 @@ interface components {
6153
6183
  /** @description SMTP username. May be omitted alongside password for anonymous SMTP (e.g. postfix on a private network); otherwise both are required. */
6154
6184
  username?: string;
6155
6185
  };
6186
+ /** @enum {string} */
6187
+ WebhookAttemptTrigger: "automatic" | "replay" | "test";
6156
6188
  WebhookDeliveryAttemptDto: {
6157
6189
  /** @description 1 for the first delivery; retries and replays count up. */
6158
6190
  attempt_number: number;
6159
- /** Format: date-time */
6191
+ /**
6192
+ * Format: date-time
6193
+ * @description When the attempt was made.
6194
+ */
6160
6195
  attempted_at: string;
6161
6196
  /**
6162
6197
  * Format: uuid
6163
6198
  * @description The endpoint's domain filter, if it has one.
6164
6199
  */
6165
6200
  domain_id: string | null;
6166
- /** Format: uuid */
6201
+ /**
6202
+ * Format: uuid
6203
+ * @description The endpoint it was delivered to.
6204
+ */
6167
6205
  endpoint_id: string;
6168
- /** @example request timed out */
6206
+ /**
6207
+ * @description Why the attempt failed when no 2xx came back; null on success.
6208
+ * @example request timed out
6209
+ */
6169
6210
  error_message: string | null;
6170
- /** @example evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f */
6211
+ /**
6212
+ * @description The event that was delivered.
6213
+ * @example evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
6214
+ */
6171
6215
  event_id: string;
6172
- /** @example user.created */
6216
+ /**
6217
+ * @description The event's type.
6218
+ * @example user.created
6219
+ */
6173
6220
  event_type: string;
6174
- /** Format: uuid */
6221
+ /**
6222
+ * Format: uuid
6223
+ * @description The attempt's id.
6224
+ */
6175
6225
  id: string;
6226
+ /** @description Milliseconds until the response; null when none came back. */
6176
6227
  latency_ms: number | null;
6177
6228
  /** @description The first 1 KiB of the response body. */
6178
6229
  response_body: string | null;
@@ -6182,28 +6233,36 @@ interface components {
6182
6233
  status_code: number | null;
6183
6234
  /** @description True for a 2xx response. */
6184
6235
  succeeded: boolean;
6185
- /**
6186
- * @description `automatic` (first delivery or a retry), `replay` or `test`.
6187
- * @enum {string}
6188
- */
6189
- trigger: "automatic" | "replay" | "test";
6236
+ /** @description `automatic` (first delivery or a retry), `replay` or `test`. */
6237
+ trigger: components["schemas"]["WebhookAttemptTrigger"];
6190
6238
  /**
6191
6239
  * Format: uri
6192
6240
  * @description Where it was sent.
6193
6241
  */
6194
6242
  url: string;
6195
6243
  };
6244
+ /** @enum {string} */
6245
+ WebhookEndpointDisabledReason: "manual" | "failing";
6196
6246
  WebhookEndpointDto: {
6197
6247
  /** @description Failed automatic deliveries in a row; a success resets it. */
6198
6248
  consecutive_failures: number;
6199
- /** Format: date-time */
6249
+ /**
6250
+ * Format: date-time
6251
+ * @description When the endpoint was created.
6252
+ */
6200
6253
  created_at: string;
6201
- /** @example Production receiver */
6254
+ /**
6255
+ * @description A label for people; null when unset.
6256
+ * @example Production receiver
6257
+ */
6202
6258
  description: string | null;
6203
- /** Format: date-time */
6259
+ /**
6260
+ * Format: date-time
6261
+ * @description When it was switched off; null while enabled.
6262
+ */
6204
6263
  disabled_at: string | null;
6205
- /** @enum {string|null} */
6206
- disabled_reason: "manual" | "failing" | null;
6264
+ /** @description `manual`: switched off by a caller. `failing`: switched off automatically after failed deliveries. Null while enabled. */
6265
+ disabled_reason: components["schemas"]["WebhookEndpointDisabledReason"] | null;
6207
6266
  /**
6208
6267
  * Format: uuid
6209
6268
  * @description Only events about this domain; null for every event of the workspace.
@@ -6228,7 +6287,10 @@ interface components {
6228
6287
  * @description Start of the current failure streak.
6229
6288
  */
6230
6289
  first_failure_at: string | null;
6231
- /** Format: uuid */
6290
+ /**
6291
+ * Format: uuid
6292
+ * @description The endpoint's id.
6293
+ */
6232
6294
  id: string;
6233
6295
  /** @description True for endpoints carried over from the product's previous webhook system: they also receive the old signature header until its sunset date. */
6234
6296
  legacy_signature: boolean;
@@ -6256,30 +6318,42 @@ interface components {
6256
6318
  * @example x9Q=
6257
6319
  */
6258
6320
  signing_secret_hint: string;
6321
+ /** @description `enabled` receives events. `disabled` was switched off. `auto_disabled` was switched off after 20 failed deliveries in a row or 24 hours of failures; `PATCH { enabled: true }` turns it back on. */
6322
+ status: components["schemas"]["WebhookEndpointStatus"];
6259
6323
  /**
6260
- * @description `enabled` receives events. `disabled` was switched off. `auto_disabled` was switched off after 20 failed deliveries in a row or 24 hours of failures; `PATCH { enabled: true }` turns it back on.
6261
- * @enum {string}
6324
+ * Format: date-time
6325
+ * @description When the endpoint last changed.
6262
6326
  */
6263
- status: "enabled" | "disabled" | "auto_disabled";
6264
- /** Format: date-time */
6265
6327
  updated_at: string;
6266
6328
  /**
6267
6329
  * Format: uri
6330
+ * @description Where events are sent.
6268
6331
  * @example https://api.acme.com/webhooks
6269
6332
  */
6270
6333
  url: string;
6271
6334
  };
6335
+ /** @enum {string} */
6336
+ WebhookEndpointStatus: "enabled" | "disabled" | "auto_disabled";
6272
6337
  WebhookEndpointWithSecretDto: {
6273
6338
  /** @description Failed automatic deliveries in a row; a success resets it. */
6274
6339
  consecutive_failures: number;
6275
- /** Format: date-time */
6340
+ /**
6341
+ * Format: date-time
6342
+ * @description When the endpoint was created.
6343
+ */
6276
6344
  created_at: string;
6277
- /** @example Production receiver */
6345
+ /**
6346
+ * @description A label for people; null when unset.
6347
+ * @example Production receiver
6348
+ */
6278
6349
  description: string | null;
6279
- /** Format: date-time */
6350
+ /**
6351
+ * Format: date-time
6352
+ * @description When it was switched off; null while enabled.
6353
+ */
6280
6354
  disabled_at: string | null;
6281
- /** @enum {string|null} */
6282
- disabled_reason: "manual" | "failing" | null;
6355
+ /** @description `manual`: switched off by a caller. `failing`: switched off automatically after failed deliveries. Null while enabled. */
6356
+ disabled_reason: components["schemas"]["WebhookEndpointDisabledReason"] | null;
6283
6357
  /**
6284
6358
  * Format: uuid
6285
6359
  * @description Only events about this domain; null for every event of the workspace.
@@ -6304,7 +6378,10 @@ interface components {
6304
6378
  * @description Start of the current failure streak.
6305
6379
  */
6306
6380
  first_failure_at: string | null;
6307
- /** Format: uuid */
6381
+ /**
6382
+ * Format: uuid
6383
+ * @description The endpoint's id.
6384
+ */
6308
6385
  id: string;
6309
6386
  /** @description True for endpoints carried over from the product's previous webhook system: they also receive the old signature header until its sunset date. */
6310
6387
  legacy_signature: boolean;
@@ -6337,15 +6414,16 @@ interface components {
6337
6414
  * @example x9Q=
6338
6415
  */
6339
6416
  signing_secret_hint: string;
6417
+ /** @description `enabled` receives events. `disabled` was switched off. `auto_disabled` was switched off after 20 failed deliveries in a row or 24 hours of failures; `PATCH { enabled: true }` turns it back on. */
6418
+ status: components["schemas"]["WebhookEndpointStatus"];
6340
6419
  /**
6341
- * @description `enabled` receives events. `disabled` was switched off. `auto_disabled` was switched off after 20 failed deliveries in a row or 24 hours of failures; `PATCH { enabled: true }` turns it back on.
6342
- * @enum {string}
6420
+ * Format: date-time
6421
+ * @description When the endpoint last changed.
6343
6422
  */
6344
- status: "enabled" | "disabled" | "auto_disabled";
6345
- /** Format: date-time */
6346
6423
  updated_at: string;
6347
6424
  /**
6348
6425
  * Format: uri
6426
+ * @description Where events are sent.
6349
6427
  * @example https://api.acme.com/webhooks
6350
6428
  */
6351
6429
  url: string;
@@ -6353,15 +6431,22 @@ interface components {
6353
6431
  WebhookEventDeliveryDto: {
6354
6432
  /** @description Number of the latest attempt; retries and replays count up. */
6355
6433
  attempt_number: number;
6356
- /** Format: date-time */
6434
+ /**
6435
+ * Format: date-time
6436
+ * @description When the latest attempt was made.
6437
+ */
6357
6438
  attempted_at: string;
6358
- /** Format: uuid */
6439
+ /**
6440
+ * Format: uuid
6441
+ * @description The endpoint.
6442
+ */
6359
6443
  endpoint_id: string;
6360
6444
  /**
6361
6445
  * Format: date-time
6362
6446
  * @description When the next automatic attempt is due; null when none is queued.
6363
6447
  */
6364
6448
  next_attempt_at: string | null;
6449
+ /** @description HTTP status of the latest attempt; null when no response came back. */
6365
6450
  status_code: number | null;
6366
6451
  /** @description True when the latest attempt got a 2xx. */
6367
6452
  succeeded: boolean;
@@ -6369,7 +6454,10 @@ interface components {
6369
6454
  WebhookEventDetailDto: {
6370
6455
  /** @description Every attempt, newest first. */
6371
6456
  attempts: components["schemas"]["WebhookDeliveryAttemptDto"][];
6372
- /** Format: date-time */
6457
+ /**
6458
+ * Format: date-time
6459
+ * @description When the event happened.
6460
+ */
6373
6461
  created_at: string;
6374
6462
  /** @description Latest attempt per endpoint (an endpoint whose first attempt is still queued is not listed yet). */
6375
6463
  deliveries: components["schemas"]["WebhookEventDeliveryDto"][];
@@ -6392,21 +6480,21 @@ interface components {
6392
6480
  payload: {
6393
6481
  [key: string]: unknown;
6394
6482
  };
6395
- /**
6396
- * @description `pending`: a delivery is queued. `failed`: the latest attempt to some endpoint failed and none is queued. `delivered`: every endpoint answered 2xx. `not_sent`: no endpoint subscribed.
6397
- * @enum {string}
6398
- */
6399
- status: "pending" | "delivered" | "failed" | "not_sent";
6483
+ /** @description `pending`: a delivery is queued. `failed`: the latest attempt to some endpoint failed and none is queued. `delivered`: every endpoint answered 2xx. `not_sent`: no endpoint subscribed. */
6484
+ status: components["schemas"]["WebhookEventStatus"];
6400
6485
  /** @description Made by "Send test". */
6401
6486
  test: boolean;
6402
6487
  /**
6488
+ * @description The event type (one of this product's catalogue).
6403
6489
  * @example email.sent
6404
- * @enum {string}
6405
6490
  */
6406
- type: "email.sent" | "email.delivered" | "email.delivery_delayed" | "email.bounced" | "email.complained" | "email.failed" | "email.suppressed" | "email.skipped" | "email.scheduled" | "email.canceled" | "email.opened" | "email.clicked" | "email.received" | "domain.created" | "domain.updated" | "domain.verified" | "domain.deleted" | "suppression.added" | "suppression.removed" | "sending_defaults.updated" | "contact.created" | "contact.updated" | "contact.deleted";
6491
+ type: components["schemas"]["WebhookEventType"];
6407
6492
  };
6408
6493
  WebhookEventDto: {
6409
- /** Format: date-time */
6494
+ /**
6495
+ * Format: date-time
6496
+ * @description When the event happened.
6497
+ */
6410
6498
  created_at: string;
6411
6499
  /** @description Latest attempt per endpoint (an endpoint whose first attempt is still queued is not listed yet). */
6412
6500
  deliveries: components["schemas"]["WebhookEventDeliveryDto"][];
@@ -6429,26 +6517,30 @@ interface components {
6429
6517
  payload: {
6430
6518
  [key: string]: unknown;
6431
6519
  };
6432
- /**
6433
- * @description `pending`: a delivery is queued. `failed`: the latest attempt to some endpoint failed and none is queued. `delivered`: every endpoint answered 2xx. `not_sent`: no endpoint subscribed.
6434
- * @enum {string}
6435
- */
6436
- status: "pending" | "delivered" | "failed" | "not_sent";
6520
+ /** @description `pending`: a delivery is queued. `failed`: the latest attempt to some endpoint failed and none is queued. `delivered`: every endpoint answered 2xx. `not_sent`: no endpoint subscribed. */
6521
+ status: components["schemas"]["WebhookEventStatus"];
6437
6522
  /** @description Made by "Send test". */
6438
6523
  test: boolean;
6439
6524
  /**
6525
+ * @description The event type (one of this product's catalogue).
6440
6526
  * @example email.sent
6441
- * @enum {string}
6442
6527
  */
6443
- type: "email.sent" | "email.delivered" | "email.delivery_delayed" | "email.bounced" | "email.complained" | "email.failed" | "email.suppressed" | "email.skipped" | "email.scheduled" | "email.canceled" | "email.opened" | "email.clicked" | "email.received" | "domain.created" | "domain.updated" | "domain.verified" | "domain.deleted" | "suppression.added" | "suppression.removed" | "sending_defaults.updated" | "contact.created" | "contact.updated" | "contact.deleted";
6528
+ type: components["schemas"]["WebhookEventType"];
6444
6529
  };
6530
+ /** @enum {string} */
6531
+ WebhookEventStatus: "pending" | "delivered" | "failed" | "not_sent";
6532
+ /** @enum {string} */
6533
+ WebhookEventType: "email.sent" | "email.delivered" | "email.delivery_delayed" | "email.bounced" | "email.complained" | "email.failed" | "email.suppressed" | "email.skipped" | "email.scheduled" | "email.canceled" | "email.opened" | "email.clicked" | "email.received" | "domain.created" | "domain.updated" | "domain.verified" | "domain.deleted" | "suppression.added" | "suppression.removed" | "sending_defaults.updated" | "contact.created" | "contact.updated" | "contact.deleted";
6445
6534
  WebhookEventTypeDto: {
6446
6535
  /**
6447
6536
  * @description Group shown in the event picker.
6448
6537
  * @example Users
6449
6538
  */
6450
6539
  category: string;
6451
- /** @example A user signed up or was created by an admin. */
6540
+ /**
6541
+ * @description When this event is sent.
6542
+ * @example A user signed up or was created by an admin.
6543
+ */
6452
6544
  description: string;
6453
6545
  /** @description False for types that can be subscribed to but are not sent yet (scheduled sends, open and click tracking, inbound). */
6454
6546
  emitted: boolean;
@@ -6462,10 +6554,10 @@ interface components {
6462
6554
  */
6463
6555
  legacy_alias: string | null;
6464
6556
  /**
6557
+ * @description The event type (one of this product's catalogue).
6465
6558
  * @example email.sent
6466
- * @enum {string}
6467
6559
  */
6468
- type: "email.sent" | "email.delivered" | "email.delivery_delayed" | "email.bounced" | "email.complained" | "email.failed" | "email.suppressed" | "email.skipped" | "email.scheduled" | "email.canceled" | "email.opened" | "email.clicked" | "email.received" | "domain.created" | "domain.updated" | "domain.verified" | "domain.deleted" | "suppression.added" | "suppression.removed" | "sending_defaults.updated" | "contact.created" | "contact.updated" | "contact.deleted";
6560
+ type: components["schemas"]["WebhookEventType"];
6469
6561
  };
6470
6562
  WebhookPaginationDto: {
6471
6563
  /** @description Whether another page follows. */
@@ -6922,6 +7014,8 @@ interface operations {
6922
7014
  responses: {
6923
7015
  200: {
6924
7016
  headers: {
7017
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
7018
+ "Idempotent-Replay"?: "true";
6925
7019
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
6926
7020
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
6927
7021
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -6975,9 +7069,11 @@ interface operations {
6975
7069
  "application/json": components["schemas"]["ErrorResponseDto"];
6976
7070
  };
6977
7071
  };
6978
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
7072
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
6979
7073
  409: {
6980
7074
  headers: {
7075
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
7076
+ "Retry-After"?: number;
6981
7077
  "X-Request-Id": components["headers"]["RequestId"];
6982
7078
  [name: string]: unknown;
6983
7079
  };
@@ -7181,6 +7277,8 @@ interface operations {
7181
7277
  responses: {
7182
7278
  200: {
7183
7279
  headers: {
7280
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
7281
+ "Idempotent-Replay"?: "true";
7184
7282
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
7185
7283
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
7186
7284
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -7234,9 +7332,11 @@ interface operations {
7234
7332
  "application/json": components["schemas"]["ErrorResponseDto"];
7235
7333
  };
7236
7334
  };
7237
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
7335
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
7238
7336
  409: {
7239
7337
  headers: {
7338
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
7339
+ "Retry-After"?: number;
7240
7340
  "X-Request-Id": components["headers"]["RequestId"];
7241
7341
  [name: string]: unknown;
7242
7342
  };
@@ -7367,6 +7467,8 @@ interface operations {
7367
7467
  responses: {
7368
7468
  201: {
7369
7469
  headers: {
7470
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
7471
+ "Idempotent-Replay"?: "true";
7370
7472
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
7371
7473
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
7372
7474
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -7420,9 +7522,11 @@ interface operations {
7420
7522
  "application/json": components["schemas"]["ErrorResponseDto"];
7421
7523
  };
7422
7524
  };
7423
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
7525
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
7424
7526
  409: {
7425
7527
  headers: {
7528
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
7529
+ "Retry-After"?: number;
7426
7530
  "X-Request-Id": components["headers"]["RequestId"];
7427
7531
  [name: string]: unknown;
7428
7532
  };
@@ -7743,6 +7847,8 @@ interface operations {
7743
7847
  responses: {
7744
7848
  200: {
7745
7849
  headers: {
7850
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
7851
+ "Idempotent-Replay"?: "true";
7746
7852
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
7747
7853
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
7748
7854
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -7796,9 +7902,11 @@ interface operations {
7796
7902
  "application/json": components["schemas"]["ErrorResponseDto"];
7797
7903
  };
7798
7904
  };
7799
- /** @description Not a draft any more (`BROADCAST_NOT_DRAFT`, `details.status`), or `IDEMPOTENCY_KEY_REUSE`. */
7905
+ /** @description Not a draft any more (`BROADCAST_NOT_DRAFT`, `details.status`), or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
7800
7906
  409: {
7801
7907
  headers: {
7908
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
7909
+ "Retry-After"?: number;
7802
7910
  "X-Request-Id": components["headers"]["RequestId"];
7803
7911
  [name: string]: unknown;
7804
7912
  };
@@ -7848,6 +7956,8 @@ interface operations {
7848
7956
  responses: {
7849
7957
  200: {
7850
7958
  headers: {
7959
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
7960
+ "Idempotent-Replay"?: "true";
7851
7961
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
7852
7962
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
7853
7963
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -7901,9 +8011,11 @@ interface operations {
7901
8011
  "application/json": components["schemas"]["ErrorResponseDto"];
7902
8012
  };
7903
8013
  };
7904
- /** @description Draft, sent or already canceled (`BROADCAST_NOT_CANCELABLE`), or `IDEMPOTENCY_KEY_REUSE`. */
8014
+ /** @description Draft, sent or already canceled (`BROADCAST_NOT_CANCELABLE`), or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
7905
8015
  409: {
7906
8016
  headers: {
8017
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
8018
+ "Retry-After"?: number;
7907
8019
  "X-Request-Id": components["headers"]["RequestId"];
7908
8020
  [name: string]: unknown;
7909
8021
  };
@@ -8025,6 +8137,8 @@ interface operations {
8025
8137
  responses: {
8026
8138
  201: {
8027
8139
  headers: {
8140
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
8141
+ "Idempotent-Replay"?: "true";
8028
8142
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
8029
8143
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
8030
8144
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -8078,9 +8192,11 @@ interface operations {
8078
8192
  "application/json": components["schemas"]["ErrorResponseDto"];
8079
8193
  };
8080
8194
  };
8081
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
8195
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
8082
8196
  409: {
8083
8197
  headers: {
8198
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
8199
+ "Retry-After"?: number;
8084
8200
  "X-Request-Id": components["headers"]["RequestId"];
8085
8201
  [name: string]: unknown;
8086
8202
  };
@@ -8214,6 +8330,8 @@ interface operations {
8214
8330
  /** @description `status` is `sending` or `scheduled`. */
8215
8331
  202: {
8216
8332
  headers: {
8333
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
8334
+ "Idempotent-Replay"?: "true";
8217
8335
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
8218
8336
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
8219
8337
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -8267,9 +8385,11 @@ interface operations {
8267
8385
  "application/json": components["schemas"]["ErrorResponseDto"];
8268
8386
  };
8269
8387
  };
8270
- /** @description Not a draft (`BROADCAST_NOT_DRAFT`), or `IDEMPOTENCY_KEY_REUSE`. */
8388
+ /** @description Not a draft (`BROADCAST_NOT_DRAFT`), or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
8271
8389
  409: {
8272
8390
  headers: {
8391
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
8392
+ "Retry-After"?: number;
8273
8393
  "X-Request-Id": components["headers"]["RequestId"];
8274
8394
  [name: string]: unknown;
8275
8395
  };
@@ -8408,6 +8528,8 @@ interface operations {
8408
8528
  responses: {
8409
8529
  201: {
8410
8530
  headers: {
8531
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
8532
+ "Idempotent-Replay"?: "true";
8411
8533
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
8412
8534
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
8413
8535
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -8461,9 +8583,11 @@ interface operations {
8461
8583
  "application/json": components["schemas"]["ErrorResponseDto"];
8462
8584
  };
8463
8585
  };
8464
- /** @description The key exists (`CONTACT_PROPERTY_EXISTS`), the workspace has 50 properties (`CONTACT_PROPERTY_LIMIT`), or `IDEMPOTENCY_KEY_REUSE`. */
8586
+ /** @description The key exists (`CONTACT_PROPERTY_EXISTS`), the workspace has 50 properties (`CONTACT_PROPERTY_LIMIT`), or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
8465
8587
  409: {
8466
8588
  headers: {
8589
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
8590
+ "Retry-After"?: number;
8467
8591
  "X-Request-Id": components["headers"]["RequestId"];
8468
8592
  [name: string]: unknown;
8469
8593
  };
@@ -8680,6 +8804,8 @@ interface operations {
8680
8804
  responses: {
8681
8805
  200: {
8682
8806
  headers: {
8807
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
8808
+ "Idempotent-Replay"?: "true";
8683
8809
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
8684
8810
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
8685
8811
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -8733,9 +8859,11 @@ interface operations {
8733
8859
  "application/json": components["schemas"]["ErrorResponseDto"];
8734
8860
  };
8735
8861
  };
8736
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
8862
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
8737
8863
  409: {
8738
8864
  headers: {
8865
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
8866
+ "Retry-After"?: number;
8739
8867
  "X-Request-Id": components["headers"]["RequestId"];
8740
8868
  [name: string]: unknown;
8741
8869
  };
@@ -8878,6 +9006,8 @@ interface operations {
8878
9006
  responses: {
8879
9007
  201: {
8880
9008
  headers: {
9009
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
9010
+ "Idempotent-Replay"?: "true";
8881
9011
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
8882
9012
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
8883
9013
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -8931,9 +9061,11 @@ interface operations {
8931
9061
  "application/json": components["schemas"]["ErrorResponseDto"];
8932
9062
  };
8933
9063
  };
8934
- /** @description A contact with this email exists (`CONTACT_EXISTS`), the workspace has 100,000 contacts (`CONTACT_LIMIT`), or `IDEMPOTENCY_KEY_REUSE`. */
9064
+ /** @description A contact with this email exists (`CONTACT_EXISTS`), the workspace has 100,000 contacts (`CONTACT_LIMIT`), or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
8935
9065
  409: {
8936
9066
  headers: {
9067
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
9068
+ "Retry-After"?: number;
8937
9069
  "X-Request-Id": components["headers"]["RequestId"];
8938
9070
  [name: string]: unknown;
8939
9071
  };
@@ -9073,6 +9205,8 @@ interface operations {
9073
9205
  /** @description Queued. */
9074
9206
  202: {
9075
9207
  headers: {
9208
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
9209
+ "Idempotent-Replay"?: "true";
9076
9210
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
9077
9211
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
9078
9212
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -9126,9 +9260,11 @@ interface operations {
9126
9260
  "application/json": components["schemas"]["ErrorResponseDto"];
9127
9261
  };
9128
9262
  };
9129
- /** @description Two imports are already running (`IMPORT_IN_PROGRESS`), or `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different body or route. */
9263
+ /** @description Two imports are already running (`IMPORT_IN_PROGRESS`), or `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different body or route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
9130
9264
  409: {
9131
9265
  headers: {
9266
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
9267
+ "Retry-After"?: number;
9132
9268
  "X-Request-Id": components["headers"]["RequestId"];
9133
9269
  [name: string]: unknown;
9134
9270
  };
@@ -9440,6 +9576,8 @@ interface operations {
9440
9576
  responses: {
9441
9577
  200: {
9442
9578
  headers: {
9579
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
9580
+ "Idempotent-Replay"?: "true";
9443
9581
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
9444
9582
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
9445
9583
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -9493,9 +9631,11 @@ interface operations {
9493
9631
  "application/json": components["schemas"]["ErrorResponseDto"];
9494
9632
  };
9495
9633
  };
9496
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
9634
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
9497
9635
  409: {
9498
9636
  headers: {
9637
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
9638
+ "Retry-After"?: number;
9499
9639
  "X-Request-Id": components["headers"]["RequestId"];
9500
9640
  [name: string]: unknown;
9501
9641
  };
@@ -9631,6 +9771,8 @@ interface operations {
9631
9771
  /** @description Already a member; nothing changed. */
9632
9772
  200: {
9633
9773
  headers: {
9774
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
9775
+ "Idempotent-Replay"?: "true";
9634
9776
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
9635
9777
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
9636
9778
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -9647,6 +9789,8 @@ interface operations {
9647
9789
  /** @description Added. */
9648
9790
  201: {
9649
9791
  headers: {
9792
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
9793
+ "Idempotent-Replay"?: "true";
9650
9794
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
9651
9795
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
9652
9796
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -9700,9 +9844,11 @@ interface operations {
9700
9844
  "application/json": components["schemas"]["ErrorResponseDto"];
9701
9845
  };
9702
9846
  };
9703
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
9847
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
9704
9848
  409: {
9705
9849
  headers: {
9850
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
9851
+ "Retry-After"?: number;
9706
9852
  "X-Request-Id": components["headers"]["RequestId"];
9707
9853
  [name: string]: unknown;
9708
9854
  };
@@ -9933,6 +10079,8 @@ interface operations {
9933
10079
  responses: {
9934
10080
  200: {
9935
10081
  headers: {
10082
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
10083
+ "Idempotent-Replay"?: "true";
9936
10084
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
9937
10085
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
9938
10086
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -9986,9 +10134,11 @@ interface operations {
9986
10134
  "application/json": components["schemas"]["ErrorResponseDto"];
9987
10135
  };
9988
10136
  };
9989
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
10137
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
9990
10138
  409: {
9991
10139
  headers: {
10140
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
10141
+ "Retry-After"?: number;
9992
10142
  "X-Request-Id": components["headers"]["RequestId"];
9993
10143
  [name: string]: unknown;
9994
10144
  };
@@ -10205,6 +10355,8 @@ interface operations {
10205
10355
  responses: {
10206
10356
  201: {
10207
10357
  headers: {
10358
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
10359
+ "Idempotent-Replay"?: "true";
10208
10360
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
10209
10361
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
10210
10362
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -10258,9 +10410,11 @@ interface operations {
10258
10410
  "application/json": components["schemas"]["ErrorResponseDto"];
10259
10411
  };
10260
10412
  };
10261
- /** @description Domain already registered (globally unique); `MAIL_FROM_HOST_IN_USE`: the `custom_return_path` host already has records that are not ours (listed in `details.found`); or `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different body or route. */
10413
+ /** @description Domain already registered (globally unique); `MAIL_FROM_HOST_IN_USE`: the `custom_return_path` host already has records that are not ours (listed in `details.found`); or `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different body or route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
10262
10414
  409: {
10263
10415
  headers: {
10416
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
10417
+ "Retry-After"?: number;
10264
10418
  "X-Request-Id": components["headers"]["RequestId"];
10265
10419
  [name: string]: unknown;
10266
10420
  };
@@ -10582,6 +10736,8 @@ interface operations {
10582
10736
  responses: {
10583
10737
  200: {
10584
10738
  headers: {
10739
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
10740
+ "Idempotent-Replay"?: "true";
10585
10741
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
10586
10742
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
10587
10743
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -10635,9 +10791,11 @@ interface operations {
10635
10791
  "application/json": components["schemas"]["ErrorResponseDto"];
10636
10792
  };
10637
10793
  };
10638
- /** @description `CAPABILITY_NOT_VERIFIED`: a verified domain cannot gain sending or receiving until the new records verify (`details.failing`, `details.records`); `DOMAIN_HAS_MAILBOXES`: receiving cannot be turned off while active mailboxes exist (`details.count`, `details.mailboxes[].id|address`); `MAIL_FROM_HOST_IN_USE`: the MAIL FROM host already has a CNAME, a foreign MX or a foreign SPF record (listed in `details.found`); or `IDEMPOTENCY_KEY_REUSE`. */
10794
+ /** @description `CAPABILITY_NOT_VERIFIED`: a verified domain cannot gain sending or receiving until the new records verify (`details.failing`, `details.records`); `DOMAIN_HAS_MAILBOXES`: receiving cannot be turned off while active mailboxes exist (`details.count`, `details.mailboxes[].id|address`); `MAIL_FROM_HOST_IN_USE`: the MAIL FROM host already has a CNAME, a foreign MX or a foreign SPF record (listed in `details.found`); or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
10639
10795
  409: {
10640
10796
  headers: {
10797
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
10798
+ "Retry-After"?: number;
10641
10799
  "X-Request-Id": components["headers"]["RequestId"];
10642
10800
  [name: string]: unknown;
10643
10801
  };
@@ -10778,6 +10936,8 @@ interface operations {
10778
10936
  /** @description The plan (dry run), or the plan with each record's `result` and the post-apply DNS check. */
10779
10937
  200: {
10780
10938
  headers: {
10939
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
10940
+ "Idempotent-Replay"?: "true";
10781
10941
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
10782
10942
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
10783
10943
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -10831,9 +10991,11 @@ interface operations {
10831
10991
  "application/json": components["schemas"]["ErrorResponseDto"];
10832
10992
  };
10833
10993
  };
10834
- /** @description `DNS_CONFLICTS`: a blocking conflict (a second SPF record, a CNAME at the name, another DKIM key at our selector, other MX records at the MAIL FROM host or the domain, a merge over 10 SPF lookups). Nothing was written; the body carries the full `plan` and `conflicts`. Or `IDEMPOTENCY_KEY_REUSE`. */
10994
+ /** @description `DNS_CONFLICTS`: a blocking conflict (a second SPF record, a CNAME at the name, another DKIM key at our selector, other MX records at the MAIL FROM host or the domain, a merge over 10 SPF lookups). Nothing was written; the body carries the full `plan` and `conflicts`. Or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
10835
10995
  409: {
10836
10996
  headers: {
10997
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
10998
+ "Retry-After"?: number;
10837
10999
  "X-Request-Id": components["headers"]["RequestId"];
10838
11000
  [name: string]: unknown;
10839
11001
  };
@@ -11065,6 +11227,8 @@ interface operations {
11065
11227
  /** @description The signed apply URL to open in the browser. */
11066
11228
  200: {
11067
11229
  headers: {
11230
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
11231
+ "Idempotent-Replay"?: "true";
11068
11232
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
11069
11233
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
11070
11234
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -11118,9 +11282,11 @@ interface operations {
11118
11282
  "application/json": components["schemas"]["ErrorResponseDto"];
11119
11283
  };
11120
11284
  };
11121
- /** @description One-click setup is not possible for this domain; nothing was started. `DOMAIN_CONNECT_DISABLED`: ProductCraft has not switched Domain Connect on. `DOMAIN_CONNECT_UNAVAILABLE`: the DNS provider does not run Domain Connect or has not onboarded our template (`details.reason`: `no_record`, `settings_unreachable`, `template_not_onboarded` or `lookup_failed`; `details.provider_name`). `DOMAIN_CONNECT_NOT_SENDING`: a receive-only domain. `DOMAIN_CONNECT_MAIL_FROM_LABEL`: the MAIL FROM label is not `bounce` or MAIL FROM is off. `DKIM_KEY_MISSING`: no DKIM key to publish. Or `IDEMPOTENCY_KEY_REUSE`. */
11285
+ /** @description One-click setup is not possible for this domain; nothing was started. `DOMAIN_CONNECT_DISABLED`: ProductCraft has not switched Domain Connect on. `DOMAIN_CONNECT_UNAVAILABLE`: the DNS provider does not run Domain Connect or has not onboarded our template (`details.reason`: `no_record`, `settings_unreachable`, `template_not_onboarded` or `lookup_failed`; `details.provider_name`). `DOMAIN_CONNECT_NOT_SENDING`: a receive-only domain. `DOMAIN_CONNECT_MAIL_FROM_LABEL`: the MAIL FROM label is not `bounce` or MAIL FROM is off. `DKIM_KEY_MISSING`: no DKIM key to publish. Or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
11122
11286
  409: {
11123
11287
  headers: {
11288
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
11289
+ "Retry-After"?: number;
11124
11290
  "X-Request-Id": components["headers"]["RequestId"];
11125
11291
  [name: string]: unknown;
11126
11292
  };
@@ -11338,6 +11504,8 @@ interface operations {
11338
11504
  responses: {
11339
11505
  201: {
11340
11506
  headers: {
11507
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
11508
+ "Idempotent-Replay"?: "true";
11341
11509
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
11342
11510
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
11343
11511
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -11391,9 +11559,11 @@ interface operations {
11391
11559
  "application/json": components["schemas"]["ErrorResponseDto"];
11392
11560
  };
11393
11561
  };
11394
- /** @description `IDEMPOTENCY_KEY_REUSE`: the key was used with a different body. */
11562
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the key was used with a different body. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
11395
11563
  409: {
11396
11564
  headers: {
11565
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
11566
+ "Retry-After"?: number;
11397
11567
  "X-Request-Id": components["headers"]["RequestId"];
11398
11568
  [name: string]: unknown;
11399
11569
  };
@@ -11612,6 +11782,8 @@ interface operations {
11612
11782
  responses: {
11613
11783
  200: {
11614
11784
  headers: {
11785
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
11786
+ "Idempotent-Replay"?: "true";
11615
11787
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
11616
11788
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
11617
11789
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -11665,9 +11837,11 @@ interface operations {
11665
11837
  "application/json": components["schemas"]["ErrorResponseDto"];
11666
11838
  };
11667
11839
  };
11668
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
11840
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
11669
11841
  409: {
11670
11842
  headers: {
11843
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
11844
+ "Retry-After"?: number;
11671
11845
  "X-Request-Id": components["headers"]["RequestId"];
11672
11846
  [name: string]: unknown;
11673
11847
  };
@@ -11875,6 +12049,8 @@ interface operations {
11875
12049
  /** @description Accepted; queued for delivery. */
11876
12050
  202: {
11877
12051
  headers: {
12052
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
12053
+ "Idempotent-Replay"?: "true";
11878
12054
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
11879
12055
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
11880
12056
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -11928,9 +12104,11 @@ interface operations {
11928
12104
  "application/json": components["schemas"]["ErrorResponseDto"];
11929
12105
  };
11930
12106
  };
11931
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different body or route. */
12107
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different body or route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
11932
12108
  409: {
11933
12109
  headers: {
12110
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
12111
+ "Retry-After"?: number;
11934
12112
  "X-Request-Id": components["headers"]["RequestId"];
11935
12113
  [name: string]: unknown;
11936
12114
  };
@@ -12254,6 +12432,8 @@ interface operations {
12254
12432
  responses: {
12255
12433
  200: {
12256
12434
  headers: {
12435
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
12436
+ "Idempotent-Replay"?: "true";
12257
12437
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
12258
12438
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
12259
12439
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -12307,9 +12487,11 @@ interface operations {
12307
12487
  "application/json": components["schemas"]["ErrorResponseDto"];
12308
12488
  };
12309
12489
  };
12310
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
12490
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
12311
12491
  409: {
12312
12492
  headers: {
12493
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
12494
+ "Retry-After"?: number;
12313
12495
  "X-Request-Id": components["headers"]["RequestId"];
12314
12496
  [name: string]: unknown;
12315
12497
  };
@@ -12517,6 +12699,8 @@ interface operations {
12517
12699
  /** @description Saved. */
12518
12700
  204: {
12519
12701
  headers: {
12702
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
12703
+ "Idempotent-Replay"?: "true";
12520
12704
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
12521
12705
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
12522
12706
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -12568,9 +12752,11 @@ interface operations {
12568
12752
  "application/json": components["schemas"]["ErrorResponseDto"];
12569
12753
  };
12570
12754
  };
12571
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
12755
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
12572
12756
  409: {
12573
12757
  headers: {
12758
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
12759
+ "Retry-After"?: number;
12574
12760
  "X-Request-Id": components["headers"]["RequestId"];
12575
12761
  [name: string]: unknown;
12576
12762
  };
@@ -12609,6 +12795,8 @@ interface operations {
12609
12795
  responses: {
12610
12796
  202: {
12611
12797
  headers: {
12798
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
12799
+ "Idempotent-Replay"?: "true";
12612
12800
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
12613
12801
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
12614
12802
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -12662,9 +12850,11 @@ interface operations {
12662
12850
  "application/json": components["schemas"]["ErrorResponseDto"];
12663
12851
  };
12664
12852
  };
12665
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
12853
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
12666
12854
  409: {
12667
12855
  headers: {
12856
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
12857
+ "Retry-After"?: number;
12668
12858
  "X-Request-Id": components["headers"]["RequestId"];
12669
12859
  [name: string]: unknown;
12670
12860
  };
@@ -12869,6 +13059,8 @@ interface operations {
12869
13059
  /** @description Disconnected. */
12870
13060
  204: {
12871
13061
  headers: {
13062
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
13063
+ "Idempotent-Replay"?: "true";
12872
13064
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
12873
13065
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
12874
13066
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -12920,9 +13112,11 @@ interface operations {
12920
13112
  "application/json": components["schemas"]["ErrorResponseDto"];
12921
13113
  };
12922
13114
  };
12923
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
13115
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
12924
13116
  409: {
12925
13117
  headers: {
13118
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
13119
+ "Retry-After"?: number;
12926
13120
  "X-Request-Id": components["headers"]["RequestId"];
12927
13121
  [name: string]: unknown;
12928
13122
  };
@@ -13050,6 +13244,8 @@ interface operations {
13050
13244
  responses: {
13051
13245
  201: {
13052
13246
  headers: {
13247
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
13248
+ "Idempotent-Replay"?: "true";
13053
13249
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
13054
13250
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
13055
13251
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -13103,9 +13299,11 @@ interface operations {
13103
13299
  "application/json": components["schemas"]["ErrorResponseDto"];
13104
13300
  };
13105
13301
  };
13106
- /** @description Mailbox local-part already exists on this domain, or the domain is not yet verified, or `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different body or route. */
13302
+ /** @description Mailbox local-part already exists on this domain, or the domain is not yet verified, or `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different body or route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
13107
13303
  409: {
13108
13304
  headers: {
13305
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
13306
+ "Retry-After"?: number;
13109
13307
  "X-Request-Id": components["headers"]["RequestId"];
13110
13308
  [name: string]: unknown;
13111
13309
  };
@@ -13322,6 +13520,8 @@ interface operations {
13322
13520
  responses: {
13323
13521
  200: {
13324
13522
  headers: {
13523
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
13524
+ "Idempotent-Replay"?: "true";
13325
13525
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
13326
13526
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
13327
13527
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -13375,9 +13575,11 @@ interface operations {
13375
13575
  "application/json": components["schemas"]["ErrorResponseDto"];
13376
13576
  };
13377
13577
  };
13378
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
13578
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
13379
13579
  409: {
13380
13580
  headers: {
13581
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
13582
+ "Retry-After"?: number;
13381
13583
  "X-Request-Id": components["headers"]["RequestId"];
13382
13584
  [name: string]: unknown;
13383
13585
  };
@@ -14315,6 +14517,8 @@ interface operations {
14315
14517
  responses: {
14316
14518
  200: {
14317
14519
  headers: {
14520
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
14521
+ "Idempotent-Replay"?: "true";
14318
14522
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
14319
14523
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
14320
14524
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -14368,9 +14572,11 @@ interface operations {
14368
14572
  "application/json": components["schemas"]["ErrorResponseDto"];
14369
14573
  };
14370
14574
  };
14371
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
14575
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
14372
14576
  409: {
14373
14577
  headers: {
14578
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
14579
+ "Retry-After"?: number;
14374
14580
  "X-Request-Id": components["headers"]["RequestId"];
14375
14581
  [name: string]: unknown;
14376
14582
  };
@@ -15367,6 +15573,8 @@ interface operations {
15367
15573
  responses: {
15368
15574
  201: {
15369
15575
  headers: {
15576
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
15577
+ "Idempotent-Replay"?: "true";
15370
15578
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
15371
15579
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
15372
15580
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -15420,9 +15628,11 @@ interface operations {
15420
15628
  "application/json": components["schemas"]["ErrorResponseDto"];
15421
15629
  };
15422
15630
  };
15423
- /** @description A segment with this name exists (`SEGMENT_EXISTS`), the workspace has 100 segments (`SEGMENT_LIMIT`), or `IDEMPOTENCY_KEY_REUSE`. */
15631
+ /** @description A segment with this name exists (`SEGMENT_EXISTS`), the workspace has 100 segments (`SEGMENT_LIMIT`), or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
15424
15632
  409: {
15425
15633
  headers: {
15634
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
15635
+ "Retry-After"?: number;
15426
15636
  "X-Request-Id": components["headers"]["RequestId"];
15427
15637
  [name: string]: unknown;
15428
15638
  };
@@ -15734,6 +15944,8 @@ interface operations {
15734
15944
  responses: {
15735
15945
  200: {
15736
15946
  headers: {
15947
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
15948
+ "Idempotent-Replay"?: "true";
15737
15949
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
15738
15950
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
15739
15951
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -15787,9 +15999,11 @@ interface operations {
15787
15999
  "application/json": components["schemas"]["ErrorResponseDto"];
15788
16000
  };
15789
16001
  };
15790
- /** @description Another segment has this name (`SEGMENT_EXISTS`), or `IDEMPOTENCY_KEY_REUSE`. */
16002
+ /** @description Another segment has this name (`SEGMENT_EXISTS`), or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
15791
16003
  409: {
15792
16004
  headers: {
16005
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
16006
+ "Retry-After"?: number;
15793
16007
  "X-Request-Id": components["headers"]["RequestId"];
15794
16008
  [name: string]: unknown;
15795
16009
  };
@@ -16270,6 +16484,8 @@ interface operations {
16270
16484
  responses: {
16271
16485
  200: {
16272
16486
  headers: {
16487
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
16488
+ "Idempotent-Replay"?: "true";
16273
16489
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
16274
16490
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
16275
16491
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -16323,9 +16539,11 @@ interface operations {
16323
16539
  "application/json": components["schemas"]["ErrorResponseDto"];
16324
16540
  };
16325
16541
  };
16326
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
16542
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
16327
16543
  409: {
16328
16544
  headers: {
16545
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
16546
+ "Retry-After"?: number;
16329
16547
  "X-Request-Id": components["headers"]["RequestId"];
16330
16548
  [name: string]: unknown;
16331
16549
  };
@@ -16871,6 +17089,8 @@ interface operations {
16871
17089
  responses: {
16872
17090
  201: {
16873
17091
  headers: {
17092
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
17093
+ "Idempotent-Replay"?: "true";
16874
17094
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
16875
17095
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
16876
17096
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -16924,9 +17144,11 @@ interface operations {
16924
17144
  "application/json": components["schemas"]["ErrorResponseDto"];
16925
17145
  };
16926
17146
  };
16927
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
17147
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
16928
17148
  409: {
16929
17149
  headers: {
17150
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
17151
+ "Retry-After"?: number;
16930
17152
  "X-Request-Id": components["headers"]["RequestId"];
16931
17153
  [name: string]: unknown;
16932
17154
  };
@@ -17153,6 +17375,8 @@ interface operations {
17153
17375
  responses: {
17154
17376
  201: {
17155
17377
  headers: {
17378
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
17379
+ "Idempotent-Replay"?: "true";
17156
17380
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
17157
17381
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
17158
17382
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -17206,9 +17430,11 @@ interface operations {
17206
17430
  "application/json": components["schemas"]["ErrorResponseDto"];
17207
17431
  };
17208
17432
  };
17209
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
17433
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
17210
17434
  409: {
17211
17435
  headers: {
17436
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
17437
+ "Retry-After"?: number;
17212
17438
  "X-Request-Id": components["headers"]["RequestId"];
17213
17439
  [name: string]: unknown;
17214
17440
  };
@@ -17793,6 +18019,8 @@ interface operations {
17793
18019
  /** @description Send accepted; queued for delivery. */
17794
18020
  202: {
17795
18021
  headers: {
18022
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
18023
+ "Idempotent-Replay"?: "true";
17796
18024
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
17797
18025
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
17798
18026
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -17846,9 +18074,11 @@ interface operations {
17846
18074
  "application/json": components["schemas"]["ErrorResponseDto"];
17847
18075
  };
17848
18076
  };
17849
- /** @description IDEMPOTENCY_KEY_REUSE — same key, different body. */
18077
+ /** @description IDEMPOTENCY_KEY_REUSE — same key, different body. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
17850
18078
  409: {
17851
18079
  headers: {
18080
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
18081
+ "Retry-After"?: number;
17852
18082
  "X-Request-Id": components["headers"]["RequestId"];
17853
18083
  [name: string]: unknown;
17854
18084
  };
@@ -17909,6 +18139,8 @@ interface operations {
17909
18139
  responses: {
17910
18140
  200: {
17911
18141
  headers: {
18142
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
18143
+ "Idempotent-Replay"?: "true";
17912
18144
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
17913
18145
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
17914
18146
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -17962,9 +18194,11 @@ interface operations {
17962
18194
  "application/json": components["schemas"]["ErrorResponseDto"];
17963
18195
  };
17964
18196
  };
17965
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
18197
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
17966
18198
  409: {
17967
18199
  headers: {
18200
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
18201
+ "Retry-After"?: number;
17968
18202
  "X-Request-Id": components["headers"]["RequestId"];
17969
18203
  [name: string]: unknown;
17970
18204
  };
@@ -18018,6 +18252,8 @@ interface operations {
18018
18252
  responses: {
18019
18253
  202: {
18020
18254
  headers: {
18255
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
18256
+ "Idempotent-Replay"?: "true";
18021
18257
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
18022
18258
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
18023
18259
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -18071,9 +18307,11 @@ interface operations {
18071
18307
  "application/json": components["schemas"]["ErrorResponseDto"];
18072
18308
  };
18073
18309
  };
18074
- /** @description Cannot test-send a layout/partial, or `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different body or route. */
18310
+ /** @description Cannot test-send a layout/partial, or `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different body or route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
18075
18311
  409: {
18076
18312
  headers: {
18313
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
18314
+ "Retry-After"?: number;
18077
18315
  "X-Request-Id": components["headers"]["RequestId"];
18078
18316
  [name: string]: unknown;
18079
18317
  };
@@ -18301,6 +18539,8 @@ interface operations {
18301
18539
  responses: {
18302
18540
  201: {
18303
18541
  headers: {
18542
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
18543
+ "Idempotent-Replay"?: "true";
18304
18544
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
18305
18545
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
18306
18546
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -18354,9 +18594,11 @@ interface operations {
18354
18594
  "application/json": components["schemas"]["ErrorResponseDto"];
18355
18595
  };
18356
18596
  };
18357
- /** @description A topic with this name exists (`TOPIC_EXISTS`), the workspace has 50 topics (`TOPIC_LIMIT`), or `IDEMPOTENCY_KEY_REUSE`. */
18597
+ /** @description A topic with this name exists (`TOPIC_EXISTS`), the workspace has 50 topics (`TOPIC_LIMIT`), or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
18358
18598
  409: {
18359
18599
  headers: {
18600
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
18601
+ "Retry-After"?: number;
18360
18602
  "X-Request-Id": components["headers"]["RequestId"];
18361
18603
  [name: string]: unknown;
18362
18604
  };
@@ -18563,6 +18805,8 @@ interface operations {
18563
18805
  responses: {
18564
18806
  200: {
18565
18807
  headers: {
18808
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
18809
+ "Idempotent-Replay"?: "true";
18566
18810
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
18567
18811
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
18568
18812
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -18616,9 +18860,11 @@ interface operations {
18616
18860
  "application/json": components["schemas"]["ErrorResponseDto"];
18617
18861
  };
18618
18862
  };
18619
- /** @description Another topic has this name (`TOPIC_EXISTS`), or `IDEMPOTENCY_KEY_REUSE`. */
18863
+ /** @description Another topic has this name (`TOPIC_EXISTS`), or `IDEMPOTENCY_KEY_REUSE`. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
18620
18864
  409: {
18621
18865
  headers: {
18866
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
18867
+ "Retry-After"?: number;
18622
18868
  "X-Request-Id": components["headers"]["RequestId"];
18623
18869
  [name: string]: unknown;
18624
18870
  };
@@ -18914,6 +19160,8 @@ interface operations {
18914
19160
  responses: {
18915
19161
  200: {
18916
19162
  headers: {
19163
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
19164
+ "Idempotent-Replay"?: "true";
18917
19165
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
18918
19166
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
18919
19167
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -18967,9 +19215,11 @@ interface operations {
18967
19215
  "application/json": components["schemas"]["ErrorResponseDto"];
18968
19216
  };
18969
19217
  };
18970
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
19218
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
18971
19219
  409: {
18972
19220
  headers: {
19221
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
19222
+ "Retry-After"?: number;
18973
19223
  "X-Request-Id": components["headers"]["RequestId"];
18974
19224
  [name: string]: unknown;
18975
19225
  };
@@ -19098,6 +19348,8 @@ interface operations {
19098
19348
  responses: {
19099
19349
  200: {
19100
19350
  headers: {
19351
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
19352
+ "Idempotent-Replay"?: "true";
19101
19353
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
19102
19354
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
19103
19355
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -19151,9 +19403,11 @@ interface operations {
19151
19403
  "application/json": components["schemas"]["ErrorResponseDto"];
19152
19404
  };
19153
19405
  };
19154
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
19406
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
19155
19407
  409: {
19156
19408
  headers: {
19409
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
19410
+ "Retry-After"?: number;
19157
19411
  "X-Request-Id": components["headers"]["RequestId"];
19158
19412
  [name: string]: unknown;
19159
19413
  };
@@ -19280,6 +19534,8 @@ interface operations {
19280
19534
  responses: {
19281
19535
  200: {
19282
19536
  headers: {
19537
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
19538
+ "Idempotent-Replay"?: "true";
19283
19539
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
19284
19540
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
19285
19541
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -19333,9 +19589,11 @@ interface operations {
19333
19589
  "application/json": components["schemas"]["ErrorResponseDto"];
19334
19590
  };
19335
19591
  };
19336
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
19592
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
19337
19593
  409: {
19338
19594
  headers: {
19595
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
19596
+ "Retry-After"?: number;
19339
19597
  "X-Request-Id": components["headers"]["RequestId"];
19340
19598
  [name: string]: unknown;
19341
19599
  };
@@ -19466,6 +19724,8 @@ interface operations {
19466
19724
  responses: {
19467
19725
  200: {
19468
19726
  headers: {
19727
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
19728
+ "Idempotent-Replay"?: "true";
19469
19729
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
19470
19730
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
19471
19731
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -19519,9 +19779,11 @@ interface operations {
19519
19779
  "application/json": components["schemas"]["ErrorResponseDto"];
19520
19780
  };
19521
19781
  };
19522
- /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. */
19782
+ /** @description `IDEMPOTENCY_KEY_REUSE`: the `Idempotency-Key` was already used with a different request body or on a different route. Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
19523
19783
  409: {
19524
19784
  headers: {
19785
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
19786
+ "Retry-After"?: number;
19525
19787
  "X-Request-Id": components["headers"]["RequestId"];
19526
19788
  [name: string]: unknown;
19527
19789
  };
@@ -19645,6 +19907,8 @@ interface operations {
19645
19907
  responses: {
19646
19908
  201: {
19647
19909
  headers: {
19910
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
19911
+ "Idempotent-Replay"?: "true";
19648
19912
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
19649
19913
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
19650
19914
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -19698,9 +19962,11 @@ interface operations {
19698
19962
  "application/json": components["schemas"]["ErrorResponseDto"];
19699
19963
  };
19700
19964
  };
19701
- /** @description Already 10 endpoints (`WEBHOOK_ENDPOINT_LIMIT`), or Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
19965
+ /** @description Already 10 endpoints (`WEBHOOK_ENDPOINT_LIMIT`), or Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
19702
19966
  409: {
19703
19967
  headers: {
19968
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
19969
+ "Retry-After"?: number;
19704
19970
  "X-Request-Id": components["headers"]["RequestId"];
19705
19971
  [name: string]: unknown;
19706
19972
  };
@@ -19917,6 +20183,8 @@ interface operations {
19917
20183
  responses: {
19918
20184
  200: {
19919
20185
  headers: {
20186
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
20187
+ "Idempotent-Replay"?: "true";
19920
20188
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
19921
20189
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
19922
20190
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -19970,9 +20238,11 @@ interface operations {
19970
20238
  "application/json": components["schemas"]["ErrorResponseDto"];
19971
20239
  };
19972
20240
  };
19973
- /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
20241
+ /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
19974
20242
  409: {
19975
20243
  headers: {
20244
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
20245
+ "Retry-After"?: number;
19976
20246
  "X-Request-Id": components["headers"]["RequestId"];
19977
20247
  [name: string]: unknown;
19978
20248
  };
@@ -20026,6 +20296,8 @@ interface operations {
20026
20296
  responses: {
20027
20297
  200: {
20028
20298
  headers: {
20299
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
20300
+ "Idempotent-Replay"?: "true";
20029
20301
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
20030
20302
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
20031
20303
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -20079,9 +20351,11 @@ interface operations {
20079
20351
  "application/json": components["schemas"]["ErrorResponseDto"];
20080
20352
  };
20081
20353
  };
20082
- /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
20354
+ /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
20083
20355
  409: {
20084
20356
  headers: {
20357
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
20358
+ "Retry-After"?: number;
20085
20359
  "X-Request-Id": components["headers"]["RequestId"];
20086
20360
  [name: string]: unknown;
20087
20361
  };
@@ -20126,6 +20400,8 @@ interface operations {
20126
20400
  /** @description The attempt, successful or not. */
20127
20401
  200: {
20128
20402
  headers: {
20403
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
20404
+ "Idempotent-Replay"?: "true";
20129
20405
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
20130
20406
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
20131
20407
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -20179,9 +20455,11 @@ interface operations {
20179
20455
  "application/json": components["schemas"]["ErrorResponseDto"];
20180
20456
  };
20181
20457
  };
20182
- /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
20458
+ /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
20183
20459
  409: {
20184
20460
  headers: {
20461
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
20462
+ "Retry-After"?: number;
20185
20463
  "X-Request-Id": components["headers"]["RequestId"];
20186
20464
  [name: string]: unknown;
20187
20465
  };
@@ -20292,11 +20570,13 @@ interface operations {
20292
20570
  type?: ("email.sent" | "email.delivered" | "email.delivery_delayed" | "email.bounced" | "email.complained" | "email.failed" | "email.suppressed" | "email.skipped" | "email.scheduled" | "email.canceled" | "email.opened" | "email.clicked" | "email.received" | "domain.created" | "domain.updated" | "domain.verified" | "domain.deleted" | "suppression.added" | "suppression.removed" | "sending_defaults.updated" | "contact.created" | "contact.updated" | "contact.deleted")[];
20293
20571
  /** @description Only events sent (or queued) to this endpoint. */
20294
20572
  endpoint_id?: string;
20295
- status?: "pending" | "delivered" | "failed" | "not_sent";
20573
+ /** @description Only events in this delivery status. */
20574
+ status?: components["schemas"]["WebhookEventStatus"];
20296
20575
  /** @description Only events created at or after this instant. */
20297
20576
  created_after?: string;
20298
20577
  /** @description Only events created before this instant. */
20299
20578
  created_before?: string;
20579
+ /** @description Page size. */
20300
20580
  limit?: number;
20301
20581
  /** @description The previous page's `pagination.next_cursor`. */
20302
20582
  cursor?: string;
@@ -20487,6 +20767,8 @@ interface operations {
20487
20767
  responses: {
20488
20768
  200: {
20489
20769
  headers: {
20770
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
20771
+ "Idempotent-Replay"?: "true";
20490
20772
  "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
20491
20773
  "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
20492
20774
  "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
@@ -20540,9 +20822,11 @@ interface operations {
20540
20822
  "application/json": components["schemas"]["ErrorResponseDto"];
20541
20823
  };
20542
20824
  };
20543
- /** @description `endpoint_id` is switched off or does not receive this event type (`WEBHOOK_ENDPOINT_NOT_SUBSCRIBED`), or Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
20825
+ /** @description `endpoint_id` is switched off or does not receive this event type (`WEBHOOK_ENDPOINT_NOT_SUBSCRIBED`), or Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). Idempotency: `IDEMPOTENCY_KEY_REUSE` when this `Idempotency-Key` was already used with a different body or route; `IDEMPOTENCY_IN_PROGRESS` while another request with the same key is still running (retry after `Retry-After` seconds, with the same key). */
20544
20826
  409: {
20545
20827
  headers: {
20828
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
20829
+ "Retry-After"?: number;
20546
20830
  "X-Request-Id": components["headers"]["RequestId"];
20547
20831
  [name: string]: unknown;
20548
20832
  };