@productcraft/waitlist 0.2.1 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -850,7 +850,10 @@ interface components {
850
850
  url: string;
851
851
  };
852
852
  CreateWebhookEndpointDto: {
853
- /** @example Production receiver */
853
+ /**
854
+ * @description A label for people.
855
+ * @example Production receiver
856
+ */
854
857
  description?: string | null;
855
858
  /**
856
859
  * @description Create it switched off.
@@ -960,26 +963,60 @@ interface components {
960
963
  waitlist_id: string;
961
964
  workspace_id: string;
962
965
  };
963
- ErrorResponseDto: {
966
+ ErrorParamDto: {
964
967
  /**
965
- * @description Stable, machine-readable error code; branch on this, not on `message`. Always present. A route-specific code when the route defines one (e.g. `WEBHOOK_ENDPOINT_NOT_FOUND`, `SERVICE_NOT_ENABLED`), otherwise the generic code for the status: `BAD_REQUEST`, `VALIDATION_ERROR` (400 from request validation), `UNAUTHORIZED`, `FORBIDDEN`, `NOT_FOUND`, `CONFLICT`, `PAYLOAD_TOO_LARGE`, `UNPROCESSABLE_ENTITY`, `RATE_LIMITED`, `INTERNAL_SERVER_ERROR`, `SERVICE_UNAVAILABLE`.
966
- * @example SERVICE_NOT_ENABLED
968
+ * @description The failed rule (class-validator constraint name, e.g. `isEmail`, `isUuid`, `whitelistValidation` for a field the operation does not declare), or `invalid`.
969
+ * @example isEmail
967
970
  */
968
971
  code: string;
969
972
  /**
970
- * @description Human-readable error message. May be a class-validator array on 400.
971
- * @example Policy denies waitlist.read on pcft:workspace/7a0c2f7e-2b8d-4f7f-9a51-3f1f0e1f3c11
973
+ * @description What is wrong with it; the same text as the field's entry in an array `message`.
974
+ * @example email must be an email
975
+ */
976
+ message: string;
977
+ /**
978
+ * @description Wire path of the invalid field: `email`, `items.0.display_name`.
979
+ * @example email
980
+ */
981
+ param: string;
982
+ };
983
+ ErrorResponseDto: {
984
+ /**
985
+ * @description Stable, machine-readable error code; branch on this, not on `message`. Always present. A route-specific code when the route defines one, otherwise the generic code for the status (`NOT_FOUND`, `VALIDATION_ERROR`, `RATE_LIMITED`, ...). Open set: accept codes you do not know. Each code is documented at https://productcraft.co/docs/errors#<code>.
986
+ * @example NOT_FOUND
987
+ */
988
+ code: components["schemas"]["WaitlistErrorCode"];
989
+ /**
990
+ * @description Structured context for errors a client has to act on, keyed in snake_case and specific to the code (e.g. `{ fqdn, reason }` on `from_domain_not_verified`). Absent on most errors.
991
+ * @example {
992
+ * "fqdn": "mail.example.com",
993
+ * "reason": "not_verified"
994
+ * }
995
+ */
996
+ details?: {
997
+ [key: string]: unknown;
998
+ };
999
+ /** @description One entry per invalid request field on a `VALIDATION_ERROR`; empty on every other error. */
1000
+ errors: components["schemas"]["ErrorParamDto"][];
1001
+ /**
1002
+ * @description Human-readable error message. A string, or on a `VALIDATION_ERROR` an array with one message per invalid field (the same texts as `errors[].message`). Branch on `code`, not on this.
1003
+ * @example Domain not found
972
1004
  */
973
1005
  message: string | string[];
1006
+ /**
1007
+ * @description The request's id, same as the `X-Request-Id` response header. Quote it when contacting support.
1008
+ * @example req_6f1c2a9d4b7e4f0a8c3d2e1f0a9b8c7d
1009
+ */
1010
+ request_id: string;
974
1011
  /**
975
1012
  * @deprecated
976
1013
  * @description Deprecated alias of `status_code`, same value. Kept so existing clients keep working; read `status_code`. Error responses carry `Deprecation: true` while it is sent.
977
- * @example 403
1014
+ * @example 404
978
1015
  */
979
1016
  statusCode?: number;
980
1017
  /**
981
- * @description HTTP status code echoed in the body (`status_code`). `statusCode` carries the same value as a deprecated alias.
982
- * @example 403
1018
+ * @description HTTP status code, same as the response status.
1019
+ * @example 404
983
1020
  */
984
1021
  status_code: number;
985
1022
  };
@@ -1020,15 +1057,19 @@ interface components {
1020
1057
  webhook_id: string;
1021
1058
  };
1022
1059
  ListWebhookEndpointsResponseDto: {
1060
+ /** @description The endpoints, newest first. */
1023
1061
  data: components["schemas"]["WebhookEndpointDto"][];
1024
1062
  /** @description Always one page (an endpoint limit applies). */
1025
1063
  pagination: components["schemas"]["WebhookPaginationDto"];
1026
1064
  };
1027
1065
  ListWebhookEventTypesResponseDto: {
1066
+ /** @description Every event type this product sends. */
1028
1067
  data: components["schemas"]["WebhookEventTypeDto"][];
1029
1068
  };
1030
1069
  ListWebhookEventsResponseDto: {
1070
+ /** @description The events, newest first. */
1031
1071
  data: components["schemas"]["WebhookEventDto"][];
1072
+ /** @description The cursor for the next page. */
1032
1073
  pagination: components["schemas"]["WebhookPaginationDto"];
1033
1074
  };
1034
1075
  NotificationTestResponseDto: {
@@ -1188,6 +1229,7 @@ interface components {
1188
1229
  ReplayWebhookEventResponseDto: {
1189
1230
  /** @description One attempt per endpoint it was sent to. */
1190
1231
  attempts: components["schemas"]["WebhookDeliveryAttemptDto"][];
1232
+ /** @description The replayed event (the same id as the original). */
1191
1233
  event_id: string;
1192
1234
  };
1193
1235
  RotateWebhookSecretDto: {
@@ -1304,6 +1346,7 @@ interface components {
1304
1346
  url?: string;
1305
1347
  };
1306
1348
  UpdateWebhookEndpointDto: {
1349
+ /** @description A new label; null clears it. */
1307
1350
  description?: string | null;
1308
1351
  /** @description Switch it on or off. Switching on also clears an automatic disable. */
1309
1352
  enabled?: boolean;
@@ -1311,6 +1354,7 @@ interface components {
1311
1354
  event_types?: ("entry.created" | "entry.approved" | "entry.rejected")[];
1312
1355
  /**
1313
1356
  * Format: uri
1357
+ * @description A new absolute https:// URL on a public host.
1314
1358
  * @example https://api.acme.com/webhooks
1315
1359
  */
1316
1360
  url?: string;
@@ -1359,6 +1403,8 @@ interface components {
1359
1403
  /** Format: uuid */
1360
1404
  waitlist_id: string;
1361
1405
  };
1406
+ /** @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>. */
1407
+ WaitlistErrorCode: ("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" | "MAIL_UNREACHABLE" | "ORIGIN_NOT_ALLOWED" | "WAITLIST_NOT_FOUND" | "domain_not_verified_by_provider" | "from_domain_not_verified" | "no_default_sender") | string;
1362
1408
  WaitlistListPaginationDto: {
1363
1409
  has_more: boolean;
1364
1410
  next_cursor: string | null;
@@ -1521,6 +1567,8 @@ interface components {
1521
1567
  */
1522
1568
  window: "1d" | "7d" | "30d";
1523
1569
  };
1570
+ /** @enum {string} */
1571
+ WebhookAttemptTrigger: "automatic" | "replay" | "test";
1524
1572
  WebhookCreateResponseDto: {
1525
1573
  /** @description Whether it receives events (`enabled` on the new routes). */
1526
1574
  active: boolean;
@@ -1549,18 +1597,37 @@ interface components {
1549
1597
  WebhookDeliveryAttemptDto: {
1550
1598
  /** @description 1 for the first delivery; retries and replays count up. */
1551
1599
  attempt_number: number;
1552
- /** Format: date-time */
1600
+ /**
1601
+ * Format: date-time
1602
+ * @description When the attempt was made.
1603
+ */
1553
1604
  attempted_at: string;
1554
- /** Format: uuid */
1605
+ /**
1606
+ * Format: uuid
1607
+ * @description The endpoint it was delivered to.
1608
+ */
1555
1609
  endpoint_id: string;
1556
- /** @example request timed out */
1610
+ /**
1611
+ * @description Why the attempt failed when no 2xx came back; null on success.
1612
+ * @example request timed out
1613
+ */
1557
1614
  error_message: string | null;
1558
- /** @example evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f */
1615
+ /**
1616
+ * @description The event that was delivered.
1617
+ * @example evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
1618
+ */
1559
1619
  event_id: string;
1560
- /** @example user.created */
1620
+ /**
1621
+ * @description The event's type.
1622
+ * @example user.created
1623
+ */
1561
1624
  event_type: string;
1562
- /** Format: uuid */
1625
+ /**
1626
+ * Format: uuid
1627
+ * @description The attempt's id.
1628
+ */
1563
1629
  id: string;
1630
+ /** @description Milliseconds until the response; null when none came back. */
1564
1631
  latency_ms: number | null;
1565
1632
  /** @description The first 1 KiB of the response body. */
1566
1633
  response_body: string | null;
@@ -1568,11 +1635,8 @@ interface components {
1568
1635
  status_code: number | null;
1569
1636
  /** @description True for a 2xx response. */
1570
1637
  succeeded: boolean;
1571
- /**
1572
- * @description `automatic` (first delivery or a retry), `replay` or `test`.
1573
- * @enum {string}
1574
- */
1575
- trigger: "automatic" | "replay" | "test";
1638
+ /** @description `automatic` (first delivery or a retry), `replay` or `test`. */
1639
+ trigger: components["schemas"]["WebhookAttemptTrigger"];
1576
1640
  /**
1577
1641
  * Format: uri
1578
1642
  * @description Where it was sent.
@@ -1583,17 +1647,28 @@ interface components {
1583
1647
  data: components["schemas"]["LegacyWebhookDeliveryAttemptDto"][];
1584
1648
  pagination: components["schemas"]["PaginationDto"];
1585
1649
  };
1650
+ /** @enum {string} */
1651
+ WebhookEndpointDisabledReason: "manual" | "failing";
1586
1652
  WebhookEndpointDto: {
1587
1653
  /** @description Failed automatic deliveries in a row; a success resets it. */
1588
1654
  consecutive_failures: number;
1589
- /** Format: date-time */
1655
+ /**
1656
+ * Format: date-time
1657
+ * @description When the endpoint was created.
1658
+ */
1590
1659
  created_at: string;
1591
- /** @example Production receiver */
1660
+ /**
1661
+ * @description A label for people; null when unset.
1662
+ * @example Production receiver
1663
+ */
1592
1664
  description: string | null;
1593
- /** Format: date-time */
1665
+ /**
1666
+ * Format: date-time
1667
+ * @description When it was switched off; null while enabled.
1668
+ */
1594
1669
  disabled_at: string | null;
1595
- /** @enum {string|null} */
1596
- disabled_reason: "manual" | "failing" | null;
1670
+ /** @description `manual`: switched off by a caller. `failing`: switched off automatically after failed deliveries. Null while enabled. */
1671
+ disabled_reason: components["schemas"]["WebhookEndpointDisabledReason"] | null;
1597
1672
  /** @description The on/off switch (`PATCH … { enabled }`). */
1598
1673
  enabled: boolean;
1599
1674
  /**
@@ -1606,7 +1681,10 @@ interface components {
1606
1681
  * @description Start of the current failure streak.
1607
1682
  */
1608
1683
  first_failure_at: string | null;
1609
- /** Format: uuid */
1684
+ /**
1685
+ * Format: uuid
1686
+ * @description The endpoint's id.
1687
+ */
1610
1688
  id: string;
1611
1689
  /** @description True for endpoints carried over from the product's previous webhook system: they also receive the old signature header until its sunset date. */
1612
1690
  legacy_signature: boolean;
@@ -1629,30 +1707,42 @@ interface components {
1629
1707
  * @example x9Q=
1630
1708
  */
1631
1709
  signing_secret_hint: string;
1710
+ /** @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. */
1711
+ status: components["schemas"]["WebhookEndpointStatus"];
1632
1712
  /**
1633
- * @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.
1634
- * @enum {string}
1713
+ * Format: date-time
1714
+ * @description When the endpoint last changed.
1635
1715
  */
1636
- status: "enabled" | "disabled" | "auto_disabled";
1637
- /** Format: date-time */
1638
1716
  updated_at: string;
1639
1717
  /**
1640
1718
  * Format: uri
1719
+ * @description Where events are sent.
1641
1720
  * @example https://api.acme.com/webhooks
1642
1721
  */
1643
1722
  url: string;
1644
1723
  };
1724
+ /** @enum {string} */
1725
+ WebhookEndpointStatus: "enabled" | "disabled" | "auto_disabled";
1645
1726
  WebhookEndpointWithSecretDto: {
1646
1727
  /** @description Failed automatic deliveries in a row; a success resets it. */
1647
1728
  consecutive_failures: number;
1648
- /** Format: date-time */
1729
+ /**
1730
+ * Format: date-time
1731
+ * @description When the endpoint was created.
1732
+ */
1649
1733
  created_at: string;
1650
- /** @example Production receiver */
1734
+ /**
1735
+ * @description A label for people; null when unset.
1736
+ * @example Production receiver
1737
+ */
1651
1738
  description: string | null;
1652
- /** Format: date-time */
1739
+ /**
1740
+ * Format: date-time
1741
+ * @description When it was switched off; null while enabled.
1742
+ */
1653
1743
  disabled_at: string | null;
1654
- /** @enum {string|null} */
1655
- disabled_reason: "manual" | "failing" | null;
1744
+ /** @description `manual`: switched off by a caller. `failing`: switched off automatically after failed deliveries. Null while enabled. */
1745
+ disabled_reason: components["schemas"]["WebhookEndpointDisabledReason"] | null;
1656
1746
  /** @description The on/off switch (`PATCH … { enabled }`). */
1657
1747
  enabled: boolean;
1658
1748
  /**
@@ -1665,7 +1755,10 @@ interface components {
1665
1755
  * @description Start of the current failure streak.
1666
1756
  */
1667
1757
  first_failure_at: string | null;
1668
- /** Format: uuid */
1758
+ /**
1759
+ * Format: uuid
1760
+ * @description The endpoint's id.
1761
+ */
1669
1762
  id: string;
1670
1763
  /** @description True for endpoints carried over from the product's previous webhook system: they also receive the old signature header until its sunset date. */
1671
1764
  legacy_signature: boolean;
@@ -1693,15 +1786,16 @@ interface components {
1693
1786
  * @example x9Q=
1694
1787
  */
1695
1788
  signing_secret_hint: string;
1789
+ /** @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. */
1790
+ status: components["schemas"]["WebhookEndpointStatus"];
1696
1791
  /**
1697
- * @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.
1698
- * @enum {string}
1792
+ * Format: date-time
1793
+ * @description When the endpoint last changed.
1699
1794
  */
1700
- status: "enabled" | "disabled" | "auto_disabled";
1701
- /** Format: date-time */
1702
1795
  updated_at: string;
1703
1796
  /**
1704
1797
  * Format: uri
1798
+ * @description Where events are sent.
1705
1799
  * @example https://api.acme.com/webhooks
1706
1800
  */
1707
1801
  url: string;
@@ -1709,15 +1803,22 @@ interface components {
1709
1803
  WebhookEventDeliveryDto: {
1710
1804
  /** @description Number of the latest attempt; retries and replays count up. */
1711
1805
  attempt_number: number;
1712
- /** Format: date-time */
1806
+ /**
1807
+ * Format: date-time
1808
+ * @description When the latest attempt was made.
1809
+ */
1713
1810
  attempted_at: string;
1714
- /** Format: uuid */
1811
+ /**
1812
+ * Format: uuid
1813
+ * @description The endpoint.
1814
+ */
1715
1815
  endpoint_id: string;
1716
1816
  /**
1717
1817
  * Format: date-time
1718
1818
  * @description When the next automatic attempt is due; null when none is queued.
1719
1819
  */
1720
1820
  next_attempt_at: string | null;
1821
+ /** @description HTTP status of the latest attempt; null when no response came back. */
1721
1822
  status_code: number | null;
1722
1823
  /** @description True when the latest attempt got a 2xx. */
1723
1824
  succeeded: boolean;
@@ -1725,7 +1826,10 @@ interface components {
1725
1826
  WebhookEventDetailDto: {
1726
1827
  /** @description Every attempt, newest first. */
1727
1828
  attempts: components["schemas"]["WebhookDeliveryAttemptDto"][];
1728
- /** Format: date-time */
1829
+ /**
1830
+ * Format: date-time
1831
+ * @description When the event happened.
1832
+ */
1729
1833
  created_at: string;
1730
1834
  /** @description Latest attempt per endpoint (an endpoint whose first attempt is still queued is not listed yet). */
1731
1835
  deliveries: components["schemas"]["WebhookEventDeliveryDto"][];
@@ -1738,21 +1842,21 @@ interface components {
1738
1842
  payload: {
1739
1843
  [key: string]: unknown;
1740
1844
  };
1741
- /**
1742
- * @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.
1743
- * @enum {string}
1744
- */
1745
- status: "pending" | "delivered" | "failed" | "not_sent";
1845
+ /** @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. */
1846
+ status: components["schemas"]["WebhookEventStatus"];
1746
1847
  /** @description Made by "Send test". */
1747
1848
  test: boolean;
1748
1849
  /**
1850
+ * @description The event type (one of this product's catalogue).
1749
1851
  * @example entry.created
1750
- * @enum {string}
1751
1852
  */
1752
- type: "entry.created" | "entry.approved" | "entry.rejected";
1853
+ type: components["schemas"]["WebhookEventType"];
1753
1854
  };
1754
1855
  WebhookEventDto: {
1755
- /** Format: date-time */
1856
+ /**
1857
+ * Format: date-time
1858
+ * @description When the event happened.
1859
+ */
1756
1860
  created_at: string;
1757
1861
  /** @description Latest attempt per endpoint (an endpoint whose first attempt is still queued is not listed yet). */
1758
1862
  deliveries: components["schemas"]["WebhookEventDeliveryDto"][];
@@ -1765,36 +1869,40 @@ interface components {
1765
1869
  payload: {
1766
1870
  [key: string]: unknown;
1767
1871
  };
1768
- /**
1769
- * @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.
1770
- * @enum {string}
1771
- */
1772
- status: "pending" | "delivered" | "failed" | "not_sent";
1872
+ /** @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. */
1873
+ status: components["schemas"]["WebhookEventStatus"];
1773
1874
  /** @description Made by "Send test". */
1774
1875
  test: boolean;
1775
1876
  /**
1877
+ * @description The event type (one of this product's catalogue).
1776
1878
  * @example entry.created
1777
- * @enum {string}
1778
1879
  */
1779
- type: "entry.created" | "entry.approved" | "entry.rejected";
1880
+ type: components["schemas"]["WebhookEventType"];
1780
1881
  };
1882
+ /** @enum {string} */
1883
+ WebhookEventStatus: "pending" | "delivered" | "failed" | "not_sent";
1884
+ /** @enum {string} */
1885
+ WebhookEventType: "entry.created" | "entry.approved" | "entry.rejected";
1781
1886
  WebhookEventTypeDto: {
1782
1887
  /**
1783
1888
  * @description Group shown in the event picker.
1784
1889
  * @example Users
1785
1890
  */
1786
1891
  category: string;
1787
- /** @example A user signed up or was created by an admin. */
1892
+ /**
1893
+ * @description When this event is sent.
1894
+ * @example A user signed up or was created by an admin.
1895
+ */
1788
1896
  description: string;
1789
1897
  /** @description An example `data` object; "Send test" delivers exactly this. */
1790
1898
  example: {
1791
1899
  [key: string]: unknown;
1792
1900
  };
1793
1901
  /**
1902
+ * @description The event type (one of this product's catalogue).
1794
1903
  * @example entry.created
1795
- * @enum {string}
1796
1904
  */
1797
- type: "entry.created" | "entry.approved" | "entry.rejected";
1905
+ type: components["schemas"]["WebhookEventType"];
1798
1906
  };
1799
1907
  WebhookListResponseDto: {
1800
1908
  data: components["schemas"]["WebhookResponseDto"][];
@@ -1837,7 +1945,10 @@ interface components {
1837
1945
  responses: never;
1838
1946
  parameters: never;
1839
1947
  requestBodies: never;
1840
- headers: never;
1948
+ headers: {
1949
+ /** @description The request's id: the inbound `X-Request-Id` when it is 1 to 128 characters of `A-Z a-z 0-9 . _ : -`, otherwise a fresh `req_...` id. Error bodies repeat it as `request_id`. Quote it when contacting support. */
1950
+ RequestId: string;
1951
+ };
1841
1952
  pathItems: never;
1842
1953
  }
1843
1954
  interface operations {
@@ -1859,6 +1970,7 @@ interface operations {
1859
1970
  /** @description Public waitlist info */
1860
1971
  200: {
1861
1972
  headers: {
1973
+ "X-Request-Id": components["headers"]["RequestId"];
1862
1974
  [name: string]: unknown;
1863
1975
  };
1864
1976
  content: {
@@ -1868,6 +1980,7 @@ interface operations {
1868
1980
  /** @description Code `WAITLIST_NOT_FOUND`: no such waitlist, not active, or its workspace was deleted. The answer is the same in every case. */
1869
1981
  404: {
1870
1982
  headers: {
1983
+ "X-Request-Id": components["headers"]["RequestId"];
1871
1984
  [name: string]: unknown;
1872
1985
  };
1873
1986
  content: {
@@ -1895,6 +2008,7 @@ interface operations {
1895
2008
  /** @description Entry created. Persist `referral_code` client-side to build the referral URL; `status` is `approved` when the waitlist auto-approves. A sign-up from an Amazon SES mailbox-simulator address (`…@simulator.amazonses.com`) is stored as a test entry (`is_test: true`, negative `position`), so test runs never land on the real list. */
1896
2009
  201: {
1897
2010
  headers: {
2011
+ "X-Request-Id": components["headers"]["RequestId"];
1898
2012
  [name: string]: unknown;
1899
2013
  };
1900
2014
  content: {
@@ -1904,6 +2018,7 @@ interface operations {
1904
2018
  /** @description Validation or spam check failed */
1905
2019
  400: {
1906
2020
  headers: {
2021
+ "X-Request-Id": components["headers"]["RequestId"];
1907
2022
  [name: string]: unknown;
1908
2023
  };
1909
2024
  content: {
@@ -1913,6 +2028,7 @@ interface operations {
1913
2028
  /** @description The request came from a web origin (`Origin` header) that is not on the waitlist's `allowed_origins` list. Requests without an `Origin` header (server-side calls) are not checked. A CORS preflight from such an origin gets the same 403. */
1914
2029
  403: {
1915
2030
  headers: {
2031
+ "X-Request-Id": components["headers"]["RequestId"];
1916
2032
  [name: string]: unknown;
1917
2033
  };
1918
2034
  content: {
@@ -1922,6 +2038,7 @@ interface operations {
1922
2038
  /** @description Code `WAITLIST_NOT_FOUND`: no such waitlist, or its workspace was deleted. The answer is the same in both cases. */
1923
2039
  404: {
1924
2040
  headers: {
2041
+ "X-Request-Id": components["headers"]["RequestId"];
1925
2042
  [name: string]: unknown;
1926
2043
  };
1927
2044
  content: {
@@ -1931,6 +2048,7 @@ interface operations {
1931
2048
  /** @description Email already on this waitlist */
1932
2049
  409: {
1933
2050
  headers: {
2051
+ "X-Request-Id": components["headers"]["RequestId"];
1934
2052
  [name: string]: unknown;
1935
2053
  };
1936
2054
  content: {
@@ -1940,6 +2058,7 @@ interface operations {
1940
2058
  /** @description Waitlist is not active or is full */
1941
2059
  422: {
1942
2060
  headers: {
2061
+ "X-Request-Id": components["headers"]["RequestId"];
1943
2062
  [name: string]: unknown;
1944
2063
  };
1945
2064
  content: {
@@ -1949,6 +2068,7 @@ interface operations {
1949
2068
  /** @description Too many requests from this IP */
1950
2069
  429: {
1951
2070
  headers: {
2071
+ "X-Request-Id": components["headers"]["RequestId"];
1952
2072
  [name: string]: unknown;
1953
2073
  };
1954
2074
  content: {
@@ -1975,6 +2095,7 @@ interface operations {
1975
2095
  /** @description Array of `{ position, referral_count, masked_email }` */
1976
2096
  200: {
1977
2097
  headers: {
2098
+ "X-Request-Id": components["headers"]["RequestId"];
1978
2099
  [name: string]: unknown;
1979
2100
  };
1980
2101
  content: {
@@ -1984,6 +2105,7 @@ interface operations {
1984
2105
  /** @description Code `WAITLIST_NOT_FOUND`: no such waitlist, not active, or its workspace was deleted. The answer is the same in every case. */
1985
2106
  404: {
1986
2107
  headers: {
2108
+ "X-Request-Id": components["headers"]["RequestId"];
1987
2109
  [name: string]: unknown;
1988
2110
  };
1989
2111
  content: {
@@ -2010,6 +2132,7 @@ interface operations {
2010
2132
  /** @description Waitlist stats. */
2011
2133
  200: {
2012
2134
  headers: {
2135
+ "X-Request-Id": components["headers"]["RequestId"];
2013
2136
  [name: string]: unknown;
2014
2137
  };
2015
2138
  content: {
@@ -2019,6 +2142,7 @@ interface operations {
2019
2142
  /** @description `window` is not one of 1d, 7d, 30d. */
2020
2143
  400: {
2021
2144
  headers: {
2145
+ "X-Request-Id": components["headers"]["RequestId"];
2022
2146
  [name: string]: unknown;
2023
2147
  };
2024
2148
  content: {
@@ -2028,6 +2152,7 @@ interface operations {
2028
2152
  /** @description Caller lacks `waitlist.read` on the workspace, or Waitlist is not enabled on it (`SERVICE_NOT_ENABLED`). */
2029
2153
  403: {
2030
2154
  headers: {
2155
+ "X-Request-Id": components["headers"]["RequestId"];
2031
2156
  [name: string]: unknown;
2032
2157
  };
2033
2158
  content: {
@@ -2037,6 +2162,7 @@ interface operations {
2037
2162
  /** @description Workspace not found: the id is unknown, is not a UUID, or is not visible to the caller. Same answer as the service's other workspace routes. */
2038
2163
  404: {
2039
2164
  headers: {
2165
+ "X-Request-Id": components["headers"]["RequestId"];
2040
2166
  [name: string]: unknown;
2041
2167
  };
2042
2168
  content: {
@@ -2059,6 +2185,7 @@ interface operations {
2059
2185
  /** @description Workspace Waitlist settings with the email setup state. */
2060
2186
  200: {
2061
2187
  headers: {
2188
+ "X-Request-Id": components["headers"]["RequestId"];
2062
2189
  [name: string]: unknown;
2063
2190
  };
2064
2191
  content: {
@@ -2068,6 +2195,7 @@ interface operations {
2068
2195
  /** @description No valid session or API key. */
2069
2196
  401: {
2070
2197
  headers: {
2198
+ "X-Request-Id": components["headers"]["RequestId"];
2071
2199
  [name: string]: unknown;
2072
2200
  };
2073
2201
  content: {
@@ -2077,6 +2205,7 @@ interface operations {
2077
2205
  /** @description Caller lacks `waitlist.settings.read` on the workspace. */
2078
2206
  403: {
2079
2207
  headers: {
2208
+ "X-Request-Id": components["headers"]["RequestId"];
2080
2209
  [name: string]: unknown;
2081
2210
  };
2082
2211
  content: {
@@ -2086,6 +2215,7 @@ interface operations {
2086
2215
  /** @description Workspace does not exist or is not Waitlist-enabled. */
2087
2216
  404: {
2088
2217
  headers: {
2218
+ "X-Request-Id": components["headers"]["RequestId"];
2089
2219
  [name: string]: unknown;
2090
2220
  };
2091
2221
  content: {
@@ -2112,6 +2242,7 @@ interface operations {
2112
2242
  /** @description Updated workspace Waitlist settings with the email setup state. */
2113
2243
  200: {
2114
2244
  headers: {
2245
+ "X-Request-Id": components["headers"]["RequestId"];
2115
2246
  [name: string]: unknown;
2116
2247
  };
2117
2248
  content: {
@@ -2121,6 +2252,7 @@ interface operations {
2121
2252
  /** @description Validation failure on the patch body (per `UpdateSettingsDto`). */
2122
2253
  400: {
2123
2254
  headers: {
2255
+ "X-Request-Id": components["headers"]["RequestId"];
2124
2256
  [name: string]: unknown;
2125
2257
  };
2126
2258
  content: {
@@ -2130,6 +2262,7 @@ interface operations {
2130
2262
  /** @description No valid session or API key. */
2131
2263
  401: {
2132
2264
  headers: {
2265
+ "X-Request-Id": components["headers"]["RequestId"];
2133
2266
  [name: string]: unknown;
2134
2267
  };
2135
2268
  content: {
@@ -2139,6 +2272,7 @@ interface operations {
2139
2272
  /** @description Caller lacks `waitlist.settings.update` on the workspace. */
2140
2273
  403: {
2141
2274
  headers: {
2275
+ "X-Request-Id": components["headers"]["RequestId"];
2142
2276
  [name: string]: unknown;
2143
2277
  };
2144
2278
  content: {
@@ -2148,6 +2282,7 @@ interface operations {
2148
2282
  /** @description Workspace does not exist or is not Waitlist-enabled. */
2149
2283
  404: {
2150
2284
  headers: {
2285
+ "X-Request-Id": components["headers"]["RequestId"];
2151
2286
  [name: string]: unknown;
2152
2287
  };
2153
2288
  content: {
@@ -2175,6 +2310,9 @@ interface operations {
2175
2310
  /** @description Accepted by Mail and queued for delivery. */
2176
2311
  202: {
2177
2312
  headers: {
2313
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
2314
+ "Idempotent-Replay"?: "true";
2315
+ "X-Request-Id": components["headers"]["RequestId"];
2178
2316
  [name: string]: unknown;
2179
2317
  };
2180
2318
  content: {
@@ -2184,6 +2322,7 @@ interface operations {
2184
2322
  /** @description Unknown `slot`, or `workspaceId` is not a UUID. */
2185
2323
  400: {
2186
2324
  headers: {
2325
+ "X-Request-Id": components["headers"]["RequestId"];
2187
2326
  [name: string]: unknown;
2188
2327
  };
2189
2328
  content: {
@@ -2193,6 +2332,7 @@ interface operations {
2193
2332
  /** @description No valid session or API key. */
2194
2333
  401: {
2195
2334
  headers: {
2335
+ "X-Request-Id": components["headers"]["RequestId"];
2196
2336
  [name: string]: unknown;
2197
2337
  };
2198
2338
  content: {
@@ -2202,6 +2342,7 @@ interface operations {
2202
2342
  /** @description Caller lacks `waitlist.settings.update`, or Mail refused the send for your role (you need Mail send access in this workspace). */
2203
2343
  403: {
2204
2344
  headers: {
2345
+ "X-Request-Id": components["headers"]["RequestId"];
2205
2346
  [name: string]: unknown;
2206
2347
  };
2207
2348
  content: {
@@ -2211,15 +2352,19 @@ interface operations {
2211
2352
  /** @description Workspace not Waitlist-enabled, or the slot's template no longer exists in Mail. */
2212
2353
  404: {
2213
2354
  headers: {
2355
+ "X-Request-Id": components["headers"]["RequestId"];
2214
2356
  [name: string]: unknown;
2215
2357
  };
2216
2358
  content: {
2217
2359
  "application/json": components["schemas"]["ErrorResponseDto"];
2218
2360
  };
2219
2361
  };
2220
- /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
2362
+ /** @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). */
2221
2363
  409: {
2222
2364
  headers: {
2365
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
2366
+ "Retry-After"?: number;
2367
+ "X-Request-Id": components["headers"]["RequestId"];
2223
2368
  [name: string]: unknown;
2224
2369
  };
2225
2370
  content: {
@@ -2229,6 +2374,7 @@ interface operations {
2229
2374
  /** @description `no_template`: the slot has no template. `no_sender_address`: custom sender mode with no address. */
2230
2375
  412: {
2231
2376
  headers: {
2377
+ "X-Request-Id": components["headers"]["RequestId"];
2232
2378
  [name: string]: unknown;
2233
2379
  };
2234
2380
  content: {
@@ -2238,6 +2384,7 @@ interface operations {
2238
2384
  /** @description `operator_email_unavailable`: the caller has no verified account email (API keys included). From Mail: `no_default_sender` (workspace mode and no default sender set in Mail), `from_domain_not_verified`, `domain_not_verified_by_provider`, a suppressed address, or a render failure. */
2239
2385
  422: {
2240
2386
  headers: {
2387
+ "X-Request-Id": components["headers"]["RequestId"];
2241
2388
  [name: string]: unknown;
2242
2389
  };
2243
2390
  content: {
@@ -2247,6 +2394,7 @@ interface operations {
2247
2394
  /** @description More than 10 tests by you in the last hour (`RATE_LIMITED`), or over a Mail send limit. */
2248
2395
  429: {
2249
2396
  headers: {
2397
+ "X-Request-Id": components["headers"]["RequestId"];
2250
2398
  [name: string]: unknown;
2251
2399
  };
2252
2400
  content: {
@@ -2256,6 +2404,7 @@ interface operations {
2256
2404
  /** @description `MAIL_UNREACHABLE`: Mail did not answer. */
2257
2405
  503: {
2258
2406
  headers: {
2407
+ "X-Request-Id": components["headers"]["RequestId"];
2259
2408
  [name: string]: unknown;
2260
2409
  };
2261
2410
  content: {
@@ -2284,6 +2433,7 @@ interface operations {
2284
2433
  /** @description Page of waitlists. */
2285
2434
  200: {
2286
2435
  headers: {
2436
+ "X-Request-Id": components["headers"]["RequestId"];
2287
2437
  [name: string]: unknown;
2288
2438
  };
2289
2439
  content: {
@@ -2313,6 +2463,9 @@ interface operations {
2313
2463
  /** @description Waitlist created. */
2314
2464
  201: {
2315
2465
  headers: {
2466
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
2467
+ "Idempotent-Replay"?: "true";
2468
+ "X-Request-Id": components["headers"]["RequestId"];
2316
2469
  [name: string]: unknown;
2317
2470
  };
2318
2471
  content: {
@@ -2322,6 +2475,7 @@ interface operations {
2322
2475
  /** @description Validation failure, including an `allowed_origins` entry that is not a plain origin. */
2323
2476
  400: {
2324
2477
  headers: {
2478
+ "X-Request-Id": components["headers"]["RequestId"];
2325
2479
  [name: string]: unknown;
2326
2480
  };
2327
2481
  content: {
@@ -2331,15 +2485,19 @@ interface operations {
2331
2485
  /** @description Caller lacks `waitlist.create`, or workspace has not enabled the `waitlist` service. */
2332
2486
  403: {
2333
2487
  headers: {
2488
+ "X-Request-Id": components["headers"]["RequestId"];
2334
2489
  [name: string]: unknown;
2335
2490
  };
2336
2491
  content: {
2337
2492
  "application/json": components["schemas"]["ErrorResponseDto"];
2338
2493
  };
2339
2494
  };
2340
- /** @description Slug already taken in this workspace. */
2495
+ /** @description Slug already taken in this workspace. 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). */
2341
2496
  409: {
2342
2497
  headers: {
2498
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
2499
+ "Retry-After"?: number;
2500
+ "X-Request-Id": components["headers"]["RequestId"];
2343
2501
  [name: string]: unknown;
2344
2502
  };
2345
2503
  content: {
@@ -2363,6 +2521,7 @@ interface operations {
2363
2521
  /** @description Waitlist row. */
2364
2522
  200: {
2365
2523
  headers: {
2524
+ "X-Request-Id": components["headers"]["RequestId"];
2366
2525
  [name: string]: unknown;
2367
2526
  };
2368
2527
  content: {
@@ -2372,6 +2531,7 @@ interface operations {
2372
2531
  /** @description Waitlist not found. */
2373
2532
  404: {
2374
2533
  headers: {
2534
+ "X-Request-Id": components["headers"]["RequestId"];
2375
2535
  [name: string]: unknown;
2376
2536
  };
2377
2537
  content: {
@@ -2395,6 +2555,7 @@ interface operations {
2395
2555
  /** @description Waitlist deleted. */
2396
2556
  204: {
2397
2557
  headers: {
2558
+ "X-Request-Id": components["headers"]["RequestId"];
2398
2559
  [name: string]: unknown;
2399
2560
  };
2400
2561
  content?: never;
@@ -2402,6 +2563,7 @@ interface operations {
2402
2563
  /** @description Caller lacks `waitlist.delete`. */
2403
2564
  403: {
2404
2565
  headers: {
2566
+ "X-Request-Id": components["headers"]["RequestId"];
2405
2567
  [name: string]: unknown;
2406
2568
  };
2407
2569
  content: {
@@ -2411,6 +2573,7 @@ interface operations {
2411
2573
  /** @description Waitlist not found. */
2412
2574
  404: {
2413
2575
  headers: {
2576
+ "X-Request-Id": components["headers"]["RequestId"];
2414
2577
  [name: string]: unknown;
2415
2578
  };
2416
2579
  content: {
@@ -2438,6 +2601,7 @@ interface operations {
2438
2601
  /** @description Waitlist updated. */
2439
2602
  200: {
2440
2603
  headers: {
2604
+ "X-Request-Id": components["headers"]["RequestId"];
2441
2605
  [name: string]: unknown;
2442
2606
  };
2443
2607
  content: {
@@ -2447,6 +2611,7 @@ interface operations {
2447
2611
  /** @description Validation failure, including an `allowed_origins` entry that is not a plain origin. */
2448
2612
  400: {
2449
2613
  headers: {
2614
+ "X-Request-Id": components["headers"]["RequestId"];
2450
2615
  [name: string]: unknown;
2451
2616
  };
2452
2617
  content: {
@@ -2456,6 +2621,7 @@ interface operations {
2456
2621
  /** @description Waitlist not found. */
2457
2622
  404: {
2458
2623
  headers: {
2624
+ "X-Request-Id": components["headers"]["RequestId"];
2459
2625
  [name: string]: unknown;
2460
2626
  };
2461
2627
  content: {
@@ -2483,6 +2649,7 @@ interface operations {
2483
2649
  /** @description Status updated. */
2484
2650
  200: {
2485
2651
  headers: {
2652
+ "X-Request-Id": components["headers"]["RequestId"];
2486
2653
  [name: string]: unknown;
2487
2654
  };
2488
2655
  content: {
@@ -2492,6 +2659,7 @@ interface operations {
2492
2659
  /** @description Invalid status transition. */
2493
2660
  400: {
2494
2661
  headers: {
2662
+ "X-Request-Id": components["headers"]["RequestId"];
2495
2663
  [name: string]: unknown;
2496
2664
  };
2497
2665
  content: {
@@ -2501,6 +2669,7 @@ interface operations {
2501
2669
  /** @description Waitlist not found. */
2502
2670
  404: {
2503
2671
  headers: {
2672
+ "X-Request-Id": components["headers"]["RequestId"];
2504
2673
  [name: string]: unknown;
2505
2674
  };
2506
2675
  content: {
@@ -2527,6 +2696,7 @@ interface operations {
2527
2696
  /** @description Aggregated analytics payload for the waitlist. */
2528
2697
  200: {
2529
2698
  headers: {
2699
+ "X-Request-Id": components["headers"]["RequestId"];
2530
2700
  [name: string]: unknown;
2531
2701
  };
2532
2702
  content: {
@@ -2536,6 +2706,7 @@ interface operations {
2536
2706
  /** @description Caller lacks `waitlist.read` on the workspace. */
2537
2707
  403: {
2538
2708
  headers: {
2709
+ "X-Request-Id": components["headers"]["RequestId"];
2539
2710
  [name: string]: unknown;
2540
2711
  };
2541
2712
  content: {
@@ -2545,6 +2716,7 @@ interface operations {
2545
2716
  /** @description Waitlist does not exist or is not in the path workspace. */
2546
2717
  404: {
2547
2718
  headers: {
2719
+ "X-Request-Id": components["headers"]["RequestId"];
2548
2720
  [name: string]: unknown;
2549
2721
  };
2550
2722
  content: {
@@ -2575,6 +2747,7 @@ interface operations {
2575
2747
  /** @description Daily timeline array, oldest first, zero-count days included. */
2576
2748
  200: {
2577
2749
  headers: {
2750
+ "X-Request-Id": components["headers"]["RequestId"];
2578
2751
  [name: string]: unknown;
2579
2752
  };
2580
2753
  content: {
@@ -2584,6 +2757,7 @@ interface operations {
2584
2757
  /** @description `since` / `until` missing, malformed, or `until <= since`. */
2585
2758
  400: {
2586
2759
  headers: {
2760
+ "X-Request-Id": components["headers"]["RequestId"];
2587
2761
  [name: string]: unknown;
2588
2762
  };
2589
2763
  content: {
@@ -2593,6 +2767,7 @@ interface operations {
2593
2767
  /** @description Caller lacks `waitlist.read` on the workspace. */
2594
2768
  403: {
2595
2769
  headers: {
2770
+ "X-Request-Id": components["headers"]["RequestId"];
2596
2771
  [name: string]: unknown;
2597
2772
  };
2598
2773
  content: {
@@ -2602,6 +2777,7 @@ interface operations {
2602
2777
  /** @description Waitlist does not exist or is not in the path workspace. */
2603
2778
  404: {
2604
2779
  headers: {
2780
+ "X-Request-Id": components["headers"]["RequestId"];
2605
2781
  [name: string]: unknown;
2606
2782
  };
2607
2783
  content: {
@@ -2639,6 +2815,7 @@ interface operations {
2639
2815
  /** @description Page of entries with pagination cursor. */
2640
2816
  200: {
2641
2817
  headers: {
2818
+ "X-Request-Id": components["headers"]["RequestId"];
2642
2819
  [name: string]: unknown;
2643
2820
  };
2644
2821
  content: {
@@ -2648,6 +2825,7 @@ interface operations {
2648
2825
  /** @description Invalid cursor, overlong `search`, malformed `since` / `until`, or `until <= since`. */
2649
2826
  400: {
2650
2827
  headers: {
2828
+ "X-Request-Id": components["headers"]["RequestId"];
2651
2829
  [name: string]: unknown;
2652
2830
  };
2653
2831
  content: {
@@ -2657,6 +2835,7 @@ interface operations {
2657
2835
  /** @description Caller lacks `entry.read`, or workspace has not enabled the `waitlist` service. */
2658
2836
  403: {
2659
2837
  headers: {
2838
+ "X-Request-Id": components["headers"]["RequestId"];
2660
2839
  [name: string]: unknown;
2661
2840
  };
2662
2841
  content: {
@@ -2666,6 +2845,7 @@ interface operations {
2666
2845
  /** @description Waitlist not found in this workspace. */
2667
2846
  404: {
2668
2847
  headers: {
2848
+ "X-Request-Id": components["headers"]["RequestId"];
2669
2849
  [name: string]: unknown;
2670
2850
  };
2671
2851
  content: {
@@ -2693,6 +2873,7 @@ interface operations {
2693
2873
  /** @description `{ requested, succeeded, failed, results }`. Each row in `results` carries `{ id, status: "ok" | "error", error?: { code, message } }` so a partial failure (one bad id) doesn't fail the whole batch. */
2694
2874
  200: {
2695
2875
  headers: {
2876
+ "X-Request-Id": components["headers"]["RequestId"];
2696
2877
  [name: string]: unknown;
2697
2878
  };
2698
2879
  content: {
@@ -2702,6 +2883,7 @@ interface operations {
2702
2883
  /** @description Empty `ids`, more than 100 ids, or unknown action. */
2703
2884
  400: {
2704
2885
  headers: {
2886
+ "X-Request-Id": components["headers"]["RequestId"];
2705
2887
  [name: string]: unknown;
2706
2888
  };
2707
2889
  content: {
@@ -2711,6 +2893,7 @@ interface operations {
2711
2893
  /** @description Caller lacks `entry.update`. */
2712
2894
  403: {
2713
2895
  headers: {
2896
+ "X-Request-Id": components["headers"]["RequestId"];
2714
2897
  [name: string]: unknown;
2715
2898
  };
2716
2899
  content: {
@@ -2720,6 +2903,7 @@ interface operations {
2720
2903
  /** @description Waitlist not found. */
2721
2904
  404: {
2722
2905
  headers: {
2906
+ "X-Request-Id": components["headers"]["RequestId"];
2723
2907
  [name: string]: unknown;
2724
2908
  };
2725
2909
  content: {
@@ -2746,6 +2930,7 @@ interface operations {
2746
2930
  /** @description Entry count. */
2747
2931
  200: {
2748
2932
  headers: {
2933
+ "X-Request-Id": components["headers"]["RequestId"];
2749
2934
  [name: string]: unknown;
2750
2935
  };
2751
2936
  content: {
@@ -2755,6 +2940,7 @@ interface operations {
2755
2940
  /** @description Waitlist not found in this workspace. */
2756
2941
  404: {
2757
2942
  headers: {
2943
+ "X-Request-Id": components["headers"]["RequestId"];
2758
2944
  [name: string]: unknown;
2759
2945
  };
2760
2946
  content: {
@@ -2781,6 +2967,7 @@ interface operations {
2781
2967
  /** @description text/csv stream — one header row + one row per entry. Content-Disposition: attachment. */
2782
2968
  200: {
2783
2969
  headers: {
2970
+ "X-Request-Id": components["headers"]["RequestId"];
2784
2971
  [name: string]: unknown;
2785
2972
  };
2786
2973
  content: {
@@ -2790,6 +2977,7 @@ interface operations {
2790
2977
  /** @description Caller lacks `waitlist.export`. */
2791
2978
  403: {
2792
2979
  headers: {
2980
+ "X-Request-Id": components["headers"]["RequestId"];
2793
2981
  [name: string]: unknown;
2794
2982
  };
2795
2983
  content: {
@@ -2799,6 +2987,7 @@ interface operations {
2799
2987
  /** @description Waitlist not found in this workspace. */
2800
2988
  404: {
2801
2989
  headers: {
2990
+ "X-Request-Id": components["headers"]["RequestId"];
2802
2991
  [name: string]: unknown;
2803
2992
  };
2804
2993
  content: {
@@ -2823,6 +3012,7 @@ interface operations {
2823
3012
  /** @description Entry row. */
2824
3013
  200: {
2825
3014
  headers: {
3015
+ "X-Request-Id": components["headers"]["RequestId"];
2826
3016
  [name: string]: unknown;
2827
3017
  };
2828
3018
  content: {
@@ -2832,6 +3022,7 @@ interface operations {
2832
3022
  /** @description Entry not found. */
2833
3023
  404: {
2834
3024
  headers: {
3025
+ "X-Request-Id": components["headers"]["RequestId"];
2835
3026
  [name: string]: unknown;
2836
3027
  };
2837
3028
  content: {
@@ -2856,6 +3047,7 @@ interface operations {
2856
3047
  /** @description Entry deleted. */
2857
3048
  204: {
2858
3049
  headers: {
3050
+ "X-Request-Id": components["headers"]["RequestId"];
2859
3051
  [name: string]: unknown;
2860
3052
  };
2861
3053
  content?: never;
@@ -2863,6 +3055,7 @@ interface operations {
2863
3055
  /** @description Caller lacks `entry.update`. */
2864
3056
  403: {
2865
3057
  headers: {
3058
+ "X-Request-Id": components["headers"]["RequestId"];
2866
3059
  [name: string]: unknown;
2867
3060
  };
2868
3061
  content: {
@@ -2872,6 +3065,7 @@ interface operations {
2872
3065
  /** @description Entry not found. */
2873
3066
  404: {
2874
3067
  headers: {
3068
+ "X-Request-Id": components["headers"]["RequestId"];
2875
3069
  [name: string]: unknown;
2876
3070
  };
2877
3071
  content: {
@@ -2900,6 +3094,7 @@ interface operations {
2900
3094
  /** @description Entry status updated. */
2901
3095
  200: {
2902
3096
  headers: {
3097
+ "X-Request-Id": components["headers"]["RequestId"];
2903
3098
  [name: string]: unknown;
2904
3099
  };
2905
3100
  content: {
@@ -2909,6 +3104,7 @@ interface operations {
2909
3104
  /** @description Invalid status transition. */
2910
3105
  400: {
2911
3106
  headers: {
3107
+ "X-Request-Id": components["headers"]["RequestId"];
2912
3108
  [name: string]: unknown;
2913
3109
  };
2914
3110
  content: {
@@ -2918,6 +3114,7 @@ interface operations {
2918
3114
  /** @description Caller lacks `entry.update`. */
2919
3115
  403: {
2920
3116
  headers: {
3117
+ "X-Request-Id": components["headers"]["RequestId"];
2921
3118
  [name: string]: unknown;
2922
3119
  };
2923
3120
  content: {
@@ -2927,6 +3124,7 @@ interface operations {
2927
3124
  /** @description Entry not found in this waitlist. */
2928
3125
  404: {
2929
3126
  headers: {
3127
+ "X-Request-Id": components["headers"]["RequestId"];
2930
3128
  [name: string]: unknown;
2931
3129
  };
2932
3130
  content: {
@@ -2955,6 +3153,7 @@ interface operations {
2955
3153
  /** @description Invite created in Auth */
2956
3154
  200: {
2957
3155
  headers: {
3156
+ "X-Request-Id": components["headers"]["RequestId"];
2958
3157
  [name: string]: unknown;
2959
3158
  };
2960
3159
  content: {
@@ -2964,6 +3163,7 @@ interface operations {
2964
3163
  /** @description No linked Auth app for this workspace */
2965
3164
  422: {
2966
3165
  headers: {
3166
+ "X-Request-Id": components["headers"]["RequestId"];
2967
3167
  [name: string]: unknown;
2968
3168
  };
2969
3169
  content: {
@@ -2994,6 +3194,9 @@ interface operations {
2994
3194
  /** @description Test entry created. */
2995
3195
  201: {
2996
3196
  headers: {
3197
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
3198
+ "Idempotent-Replay"?: "true";
3199
+ "X-Request-Id": components["headers"]["RequestId"];
2997
3200
  [name: string]: unknown;
2998
3201
  };
2999
3202
  content: {
@@ -3003,6 +3206,7 @@ interface operations {
3003
3206
  /** @description Validation failure. */
3004
3207
  400: {
3005
3208
  headers: {
3209
+ "X-Request-Id": components["headers"]["RequestId"];
3006
3210
  [name: string]: unknown;
3007
3211
  };
3008
3212
  content: {
@@ -3012,6 +3216,7 @@ interface operations {
3012
3216
  /** @description Caller lacks `waitlist.update`, or workspace has not enabled the `waitlist` service. */
3013
3217
  403: {
3014
3218
  headers: {
3219
+ "X-Request-Id": components["headers"]["RequestId"];
3015
3220
  [name: string]: unknown;
3016
3221
  };
3017
3222
  content: {
@@ -3021,15 +3226,19 @@ interface operations {
3021
3226
  /** @description Waitlist not found in this workspace. */
3022
3227
  404: {
3023
3228
  headers: {
3229
+ "X-Request-Id": components["headers"]["RequestId"];
3024
3230
  [name: string]: unknown;
3025
3231
  };
3026
3232
  content: {
3027
3233
  "application/json": components["schemas"]["ErrorResponseDto"];
3028
3234
  };
3029
3235
  };
3030
- /** @description Idempotency-Key reused with a different body. */
3236
+ /** @description Idempotency-Key reused 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). */
3031
3237
  409: {
3032
3238
  headers: {
3239
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
3240
+ "Retry-After"?: number;
3241
+ "X-Request-Id": components["headers"]["RequestId"];
3033
3242
  [name: string]: unknown;
3034
3243
  };
3035
3244
  content: {
@@ -3039,6 +3248,7 @@ interface operations {
3039
3248
  /** @description The waitlist is closed. */
3040
3249
  422: {
3041
3250
  headers: {
3251
+ "X-Request-Id": components["headers"]["RequestId"];
3042
3252
  [name: string]: unknown;
3043
3253
  };
3044
3254
  content: {
@@ -3067,6 +3277,7 @@ interface operations {
3067
3277
  /** @description Page of variants in (kind, locale, created_at) order with a pagination cursor. */
3068
3278
  200: {
3069
3279
  headers: {
3280
+ "X-Request-Id": components["headers"]["RequestId"];
3070
3281
  [name: string]: unknown;
3071
3282
  };
3072
3283
  content: {
@@ -3076,6 +3287,7 @@ interface operations {
3076
3287
  /** @description Invalid cursor. */
3077
3288
  400: {
3078
3289
  headers: {
3290
+ "X-Request-Id": components["headers"]["RequestId"];
3079
3291
  [name: string]: unknown;
3080
3292
  };
3081
3293
  content: {
@@ -3085,6 +3297,7 @@ interface operations {
3085
3297
  /** @description Waitlist not found in this workspace */
3086
3298
  404: {
3087
3299
  headers: {
3300
+ "X-Request-Id": components["headers"]["RequestId"];
3088
3301
  [name: string]: unknown;
3089
3302
  };
3090
3303
  content: {
@@ -3112,6 +3325,7 @@ interface operations {
3112
3325
  /** @description Variant created */
3113
3326
  201: {
3114
3327
  headers: {
3328
+ "X-Request-Id": components["headers"]["RequestId"];
3115
3329
  [name: string]: unknown;
3116
3330
  };
3117
3331
  content: {
@@ -3121,6 +3335,7 @@ interface operations {
3121
3335
  /** @description Validation failure */
3122
3336
  400: {
3123
3337
  headers: {
3338
+ "X-Request-Id": components["headers"]["RequestId"];
3124
3339
  [name: string]: unknown;
3125
3340
  };
3126
3341
  content: {
@@ -3130,6 +3345,7 @@ interface operations {
3130
3345
  /** @description Waitlist not found in this workspace */
3131
3346
  404: {
3132
3347
  headers: {
3348
+ "X-Request-Id": components["headers"]["RequestId"];
3133
3349
  [name: string]: unknown;
3134
3350
  };
3135
3351
  content: {
@@ -3154,6 +3370,7 @@ interface operations {
3154
3370
  /** @description Variant deleted */
3155
3371
  204: {
3156
3372
  headers: {
3373
+ "X-Request-Id": components["headers"]["RequestId"];
3157
3374
  [name: string]: unknown;
3158
3375
  };
3159
3376
  content?: never;
@@ -3161,6 +3378,7 @@ interface operations {
3161
3378
  /** @description Variant not found */
3162
3379
  404: {
3163
3380
  headers: {
3381
+ "X-Request-Id": components["headers"]["RequestId"];
3164
3382
  [name: string]: unknown;
3165
3383
  };
3166
3384
  content: {
@@ -3189,6 +3407,7 @@ interface operations {
3189
3407
  /** @description Variant updated */
3190
3408
  200: {
3191
3409
  headers: {
3410
+ "X-Request-Id": components["headers"]["RequestId"];
3192
3411
  [name: string]: unknown;
3193
3412
  };
3194
3413
  content: {
@@ -3198,6 +3417,7 @@ interface operations {
3198
3417
  /** @description Variant not found */
3199
3418
  404: {
3200
3419
  headers: {
3420
+ "X-Request-Id": components["headers"]["RequestId"];
3201
3421
  [name: string]: unknown;
3202
3422
  };
3203
3423
  content: {
@@ -3225,6 +3445,7 @@ interface operations {
3225
3445
  /** @description Page of webhooks for the workspace. */
3226
3446
  200: {
3227
3447
  headers: {
3448
+ "X-Request-Id": components["headers"]["RequestId"];
3228
3449
  [name: string]: unknown;
3229
3450
  };
3230
3451
  content: {
@@ -3234,6 +3455,7 @@ interface operations {
3234
3455
  /** @description Invalid cursor. */
3235
3456
  400: {
3236
3457
  headers: {
3458
+ "X-Request-Id": components["headers"]["RequestId"];
3237
3459
  [name: string]: unknown;
3238
3460
  };
3239
3461
  content: {
@@ -3263,15 +3485,21 @@ interface operations {
3263
3485
  /** @description Webhook created. Includes plaintext `signing_secret` exactly once. */
3264
3486
  201: {
3265
3487
  headers: {
3488
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
3489
+ "Idempotent-Replay"?: "true";
3490
+ "X-Request-Id": components["headers"]["RequestId"];
3266
3491
  [name: string]: unknown;
3267
3492
  };
3268
3493
  content: {
3269
3494
  "application/json": components["schemas"]["WebhookCreateResponseDto"];
3270
3495
  };
3271
3496
  };
3272
- /** @description The workspace already has 10 webhooks. */
3497
+ /** @description The workspace already has 10 webhooks. 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). */
3273
3498
  409: {
3274
3499
  headers: {
3500
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
3501
+ "Retry-After"?: number;
3502
+ "X-Request-Id": components["headers"]["RequestId"];
3275
3503
  [name: string]: unknown;
3276
3504
  };
3277
3505
  content: {
@@ -3293,6 +3521,7 @@ interface operations {
3293
3521
  responses: {
3294
3522
  200: {
3295
3523
  headers: {
3524
+ "X-Request-Id": components["headers"]["RequestId"];
3296
3525
  [name: string]: unknown;
3297
3526
  };
3298
3527
  content: {
@@ -3302,6 +3531,7 @@ interface operations {
3302
3531
  /** @description The scope id in the path is malformed. */
3303
3532
  400: {
3304
3533
  headers: {
3534
+ "X-Request-Id": components["headers"]["RequestId"];
3305
3535
  [name: string]: unknown;
3306
3536
  };
3307
3537
  content: {
@@ -3311,6 +3541,7 @@ interface operations {
3311
3541
  /** @description Missing or invalid bearer token. */
3312
3542
  401: {
3313
3543
  headers: {
3544
+ "X-Request-Id": components["headers"]["RequestId"];
3314
3545
  [name: string]: unknown;
3315
3546
  };
3316
3547
  content: {
@@ -3320,6 +3551,7 @@ interface operations {
3320
3551
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3321
3552
  403: {
3322
3553
  headers: {
3554
+ "X-Request-Id": components["headers"]["RequestId"];
3323
3555
  [name: string]: unknown;
3324
3556
  };
3325
3557
  content: {
@@ -3348,6 +3580,9 @@ interface operations {
3348
3580
  responses: {
3349
3581
  201: {
3350
3582
  headers: {
3583
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
3584
+ "Idempotent-Replay"?: "true";
3585
+ "X-Request-Id": components["headers"]["RequestId"];
3351
3586
  [name: string]: unknown;
3352
3587
  };
3353
3588
  content: {
@@ -3357,6 +3592,7 @@ interface operations {
3357
3592
  /** @description Validation failure: URL not https with a public host, or an unknown event type (`WEBHOOK_EVENT_TYPE_UNKNOWN`). */
3358
3593
  400: {
3359
3594
  headers: {
3595
+ "X-Request-Id": components["headers"]["RequestId"];
3360
3596
  [name: string]: unknown;
3361
3597
  };
3362
3598
  content: {
@@ -3366,6 +3602,7 @@ interface operations {
3366
3602
  /** @description Missing or invalid bearer token. */
3367
3603
  401: {
3368
3604
  headers: {
3605
+ "X-Request-Id": components["headers"]["RequestId"];
3369
3606
  [name: string]: unknown;
3370
3607
  };
3371
3608
  content: {
@@ -3375,15 +3612,19 @@ interface operations {
3375
3612
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3376
3613
  403: {
3377
3614
  headers: {
3615
+ "X-Request-Id": components["headers"]["RequestId"];
3378
3616
  [name: string]: unknown;
3379
3617
  };
3380
3618
  content: {
3381
3619
  "application/json": components["schemas"]["ErrorResponseDto"];
3382
3620
  };
3383
3621
  };
3384
- /** @description Already 10 endpoints (`WEBHOOK_ENDPOINT_LIMIT`), or Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
3622
+ /** @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). */
3385
3623
  409: {
3386
3624
  headers: {
3625
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
3626
+ "Retry-After"?: number;
3627
+ "X-Request-Id": components["headers"]["RequestId"];
3387
3628
  [name: string]: unknown;
3388
3629
  };
3389
3630
  content: {
@@ -3393,6 +3634,7 @@ interface operations {
3393
3634
  /** @description The URL points at a private, loopback or internal address. */
3394
3635
  422: {
3395
3636
  headers: {
3637
+ "X-Request-Id": components["headers"]["RequestId"];
3396
3638
  [name: string]: unknown;
3397
3639
  };
3398
3640
  content: {
@@ -3415,6 +3657,7 @@ interface operations {
3415
3657
  responses: {
3416
3658
  200: {
3417
3659
  headers: {
3660
+ "X-Request-Id": components["headers"]["RequestId"];
3418
3661
  [name: string]: unknown;
3419
3662
  };
3420
3663
  content: {
@@ -3424,6 +3667,7 @@ interface operations {
3424
3667
  /** @description `endpoint_id` is not a UUID. */
3425
3668
  400: {
3426
3669
  headers: {
3670
+ "X-Request-Id": components["headers"]["RequestId"];
3427
3671
  [name: string]: unknown;
3428
3672
  };
3429
3673
  content: {
@@ -3433,6 +3677,7 @@ interface operations {
3433
3677
  /** @description Missing or invalid bearer token. */
3434
3678
  401: {
3435
3679
  headers: {
3680
+ "X-Request-Id": components["headers"]["RequestId"];
3436
3681
  [name: string]: unknown;
3437
3682
  };
3438
3683
  content: {
@@ -3442,6 +3687,7 @@ interface operations {
3442
3687
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3443
3688
  403: {
3444
3689
  headers: {
3690
+ "X-Request-Id": components["headers"]["RequestId"];
3445
3691
  [name: string]: unknown;
3446
3692
  };
3447
3693
  content: {
@@ -3451,6 +3697,7 @@ interface operations {
3451
3697
  /** @description No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
3452
3698
  404: {
3453
3699
  headers: {
3700
+ "X-Request-Id": components["headers"]["RequestId"];
3454
3701
  [name: string]: unknown;
3455
3702
  };
3456
3703
  content: {
@@ -3474,6 +3721,7 @@ interface operations {
3474
3721
  /** @description Deleted. */
3475
3722
  204: {
3476
3723
  headers: {
3724
+ "X-Request-Id": components["headers"]["RequestId"];
3477
3725
  [name: string]: unknown;
3478
3726
  };
3479
3727
  content?: never;
@@ -3481,6 +3729,7 @@ interface operations {
3481
3729
  /** @description `endpoint_id` is not a UUID. */
3482
3730
  400: {
3483
3731
  headers: {
3732
+ "X-Request-Id": components["headers"]["RequestId"];
3484
3733
  [name: string]: unknown;
3485
3734
  };
3486
3735
  content: {
@@ -3490,6 +3739,7 @@ interface operations {
3490
3739
  /** @description Missing or invalid bearer token. */
3491
3740
  401: {
3492
3741
  headers: {
3742
+ "X-Request-Id": components["headers"]["RequestId"];
3493
3743
  [name: string]: unknown;
3494
3744
  };
3495
3745
  content: {
@@ -3499,6 +3749,7 @@ interface operations {
3499
3749
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3500
3750
  403: {
3501
3751
  headers: {
3752
+ "X-Request-Id": components["headers"]["RequestId"];
3502
3753
  [name: string]: unknown;
3503
3754
  };
3504
3755
  content: {
@@ -3508,6 +3759,7 @@ interface operations {
3508
3759
  /** @description No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
3509
3760
  404: {
3510
3761
  headers: {
3762
+ "X-Request-Id": components["headers"]["RequestId"];
3511
3763
  [name: string]: unknown;
3512
3764
  };
3513
3765
  content: {
@@ -3537,6 +3789,9 @@ interface operations {
3537
3789
  responses: {
3538
3790
  200: {
3539
3791
  headers: {
3792
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
3793
+ "Idempotent-Replay"?: "true";
3794
+ "X-Request-Id": components["headers"]["RequestId"];
3540
3795
  [name: string]: unknown;
3541
3796
  };
3542
3797
  content: {
@@ -3546,6 +3801,7 @@ interface operations {
3546
3801
  /** @description Validation failure, or `endpoint_id` is not a UUID. */
3547
3802
  400: {
3548
3803
  headers: {
3804
+ "X-Request-Id": components["headers"]["RequestId"];
3549
3805
  [name: string]: unknown;
3550
3806
  };
3551
3807
  content: {
@@ -3555,6 +3811,7 @@ interface operations {
3555
3811
  /** @description Missing or invalid bearer token. */
3556
3812
  401: {
3557
3813
  headers: {
3814
+ "X-Request-Id": components["headers"]["RequestId"];
3558
3815
  [name: string]: unknown;
3559
3816
  };
3560
3817
  content: {
@@ -3564,6 +3821,7 @@ interface operations {
3564
3821
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3565
3822
  403: {
3566
3823
  headers: {
3824
+ "X-Request-Id": components["headers"]["RequestId"];
3567
3825
  [name: string]: unknown;
3568
3826
  };
3569
3827
  content: {
@@ -3573,15 +3831,19 @@ interface operations {
3573
3831
  /** @description No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
3574
3832
  404: {
3575
3833
  headers: {
3834
+ "X-Request-Id": components["headers"]["RequestId"];
3576
3835
  [name: string]: unknown;
3577
3836
  };
3578
3837
  content: {
3579
3838
  "application/json": components["schemas"]["ErrorResponseDto"];
3580
3839
  };
3581
3840
  };
3582
- /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
3841
+ /** @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). */
3583
3842
  409: {
3584
3843
  headers: {
3844
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
3845
+ "Retry-After"?: number;
3846
+ "X-Request-Id": components["headers"]["RequestId"];
3585
3847
  [name: string]: unknown;
3586
3848
  };
3587
3849
  content: {
@@ -3591,6 +3853,7 @@ interface operations {
3591
3853
  /** @description The new URL points at a private, loopback or internal address. */
3592
3854
  422: {
3593
3855
  headers: {
3856
+ "X-Request-Id": components["headers"]["RequestId"];
3594
3857
  [name: string]: unknown;
3595
3858
  };
3596
3859
  content: {
@@ -3620,6 +3883,9 @@ interface operations {
3620
3883
  responses: {
3621
3884
  200: {
3622
3885
  headers: {
3886
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
3887
+ "Idempotent-Replay"?: "true";
3888
+ "X-Request-Id": components["headers"]["RequestId"];
3623
3889
  [name: string]: unknown;
3624
3890
  };
3625
3891
  content: {
@@ -3629,6 +3895,7 @@ interface operations {
3629
3895
  /** @description `grace_hours` out of range, or `endpoint_id` is not a UUID. */
3630
3896
  400: {
3631
3897
  headers: {
3898
+ "X-Request-Id": components["headers"]["RequestId"];
3632
3899
  [name: string]: unknown;
3633
3900
  };
3634
3901
  content: {
@@ -3638,6 +3905,7 @@ interface operations {
3638
3905
  /** @description Missing or invalid bearer token. */
3639
3906
  401: {
3640
3907
  headers: {
3908
+ "X-Request-Id": components["headers"]["RequestId"];
3641
3909
  [name: string]: unknown;
3642
3910
  };
3643
3911
  content: {
@@ -3647,6 +3915,7 @@ interface operations {
3647
3915
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3648
3916
  403: {
3649
3917
  headers: {
3918
+ "X-Request-Id": components["headers"]["RequestId"];
3650
3919
  [name: string]: unknown;
3651
3920
  };
3652
3921
  content: {
@@ -3656,15 +3925,19 @@ interface operations {
3656
3925
  /** @description No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
3657
3926
  404: {
3658
3927
  headers: {
3928
+ "X-Request-Id": components["headers"]["RequestId"];
3659
3929
  [name: string]: unknown;
3660
3930
  };
3661
3931
  content: {
3662
3932
  "application/json": components["schemas"]["ErrorResponseDto"];
3663
3933
  };
3664
3934
  };
3665
- /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
3935
+ /** @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). */
3666
3936
  409: {
3667
3937
  headers: {
3938
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
3939
+ "Retry-After"?: number;
3940
+ "X-Request-Id": components["headers"]["RequestId"];
3668
3941
  [name: string]: unknown;
3669
3942
  };
3670
3943
  content: {
@@ -3695,6 +3968,9 @@ interface operations {
3695
3968
  /** @description The attempt, successful or not. */
3696
3969
  200: {
3697
3970
  headers: {
3971
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
3972
+ "Idempotent-Replay"?: "true";
3973
+ "X-Request-Id": components["headers"]["RequestId"];
3698
3974
  [name: string]: unknown;
3699
3975
  };
3700
3976
  content: {
@@ -3704,6 +3980,7 @@ interface operations {
3704
3980
  /** @description Unknown `event_type`, or `endpoint_id` is not a UUID. */
3705
3981
  400: {
3706
3982
  headers: {
3983
+ "X-Request-Id": components["headers"]["RequestId"];
3707
3984
  [name: string]: unknown;
3708
3985
  };
3709
3986
  content: {
@@ -3713,6 +3990,7 @@ interface operations {
3713
3990
  /** @description Missing or invalid bearer token. */
3714
3991
  401: {
3715
3992
  headers: {
3993
+ "X-Request-Id": components["headers"]["RequestId"];
3716
3994
  [name: string]: unknown;
3717
3995
  };
3718
3996
  content: {
@@ -3722,6 +4000,7 @@ interface operations {
3722
4000
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3723
4001
  403: {
3724
4002
  headers: {
4003
+ "X-Request-Id": components["headers"]["RequestId"];
3725
4004
  [name: string]: unknown;
3726
4005
  };
3727
4006
  content: {
@@ -3731,15 +4010,19 @@ interface operations {
3731
4010
  /** @description No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
3732
4011
  404: {
3733
4012
  headers: {
4013
+ "X-Request-Id": components["headers"]["RequestId"];
3734
4014
  [name: string]: unknown;
3735
4015
  };
3736
4016
  content: {
3737
4017
  "application/json": components["schemas"]["ErrorResponseDto"];
3738
4018
  };
3739
4019
  };
3740
- /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
4020
+ /** @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). */
3741
4021
  409: {
3742
4022
  headers: {
4023
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
4024
+ "Retry-After"?: number;
4025
+ "X-Request-Id": components["headers"]["RequestId"];
3743
4026
  [name: string]: unknown;
3744
4027
  };
3745
4028
  content: {
@@ -3761,6 +4044,7 @@ interface operations {
3761
4044
  responses: {
3762
4045
  200: {
3763
4046
  headers: {
4047
+ "X-Request-Id": components["headers"]["RequestId"];
3764
4048
  [name: string]: unknown;
3765
4049
  };
3766
4050
  content: {
@@ -3770,6 +4054,7 @@ interface operations {
3770
4054
  /** @description Missing or invalid bearer token. */
3771
4055
  401: {
3772
4056
  headers: {
4057
+ "X-Request-Id": components["headers"]["RequestId"];
3773
4058
  [name: string]: unknown;
3774
4059
  };
3775
4060
  content: {
@@ -3779,6 +4064,7 @@ interface operations {
3779
4064
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3780
4065
  403: {
3781
4066
  headers: {
4067
+ "X-Request-Id": components["headers"]["RequestId"];
3782
4068
  [name: string]: unknown;
3783
4069
  };
3784
4070
  content: {
@@ -3794,11 +4080,13 @@ interface operations {
3794
4080
  type?: ("entry.created" | "entry.approved" | "entry.rejected")[];
3795
4081
  /** @description Only events sent (or queued) to this endpoint. */
3796
4082
  endpoint_id?: string;
3797
- status?: "pending" | "delivered" | "failed" | "not_sent";
4083
+ /** @description Only events in this delivery status. */
4084
+ status?: components["schemas"]["WebhookEventStatus"];
3798
4085
  /** @description Only events created at or after this instant. */
3799
4086
  created_after?: string;
3800
4087
  /** @description Only events created before this instant. */
3801
4088
  created_before?: string;
4089
+ /** @description Page size. */
3802
4090
  limit?: number;
3803
4091
  /** @description The previous page's `pagination.next_cursor`. */
3804
4092
  cursor?: string;
@@ -3813,6 +4101,7 @@ interface operations {
3813
4101
  responses: {
3814
4102
  200: {
3815
4103
  headers: {
4104
+ "X-Request-Id": components["headers"]["RequestId"];
3816
4105
  [name: string]: unknown;
3817
4106
  };
3818
4107
  content: {
@@ -3822,6 +4111,7 @@ interface operations {
3822
4111
  /** @description Invalid filter value or cursor. */
3823
4112
  400: {
3824
4113
  headers: {
4114
+ "X-Request-Id": components["headers"]["RequestId"];
3825
4115
  [name: string]: unknown;
3826
4116
  };
3827
4117
  content: {
@@ -3831,6 +4121,7 @@ interface operations {
3831
4121
  /** @description Missing or invalid bearer token. */
3832
4122
  401: {
3833
4123
  headers: {
4124
+ "X-Request-Id": components["headers"]["RequestId"];
3834
4125
  [name: string]: unknown;
3835
4126
  };
3836
4127
  content: {
@@ -3840,6 +4131,7 @@ interface operations {
3840
4131
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3841
4132
  403: {
3842
4133
  headers: {
4134
+ "X-Request-Id": components["headers"]["RequestId"];
3843
4135
  [name: string]: unknown;
3844
4136
  };
3845
4137
  content: {
@@ -3863,6 +4155,7 @@ interface operations {
3863
4155
  responses: {
3864
4156
  200: {
3865
4157
  headers: {
4158
+ "X-Request-Id": components["headers"]["RequestId"];
3866
4159
  [name: string]: unknown;
3867
4160
  };
3868
4161
  content: {
@@ -3872,6 +4165,7 @@ interface operations {
3872
4165
  /** @description `event_id` is not `evt_<uuid>`. */
3873
4166
  400: {
3874
4167
  headers: {
4168
+ "X-Request-Id": components["headers"]["RequestId"];
3875
4169
  [name: string]: unknown;
3876
4170
  };
3877
4171
  content: {
@@ -3881,6 +4175,7 @@ interface operations {
3881
4175
  /** @description Missing or invalid bearer token. */
3882
4176
  401: {
3883
4177
  headers: {
4178
+ "X-Request-Id": components["headers"]["RequestId"];
3884
4179
  [name: string]: unknown;
3885
4180
  };
3886
4181
  content: {
@@ -3890,6 +4185,7 @@ interface operations {
3890
4185
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3891
4186
  403: {
3892
4187
  headers: {
4188
+ "X-Request-Id": components["headers"]["RequestId"];
3893
4189
  [name: string]: unknown;
3894
4190
  };
3895
4191
  content: {
@@ -3899,6 +4195,7 @@ interface operations {
3899
4195
  /** @description No such event here (`WEBHOOK_EVENT_NOT_FOUND`); events are kept for 30 days. */
3900
4196
  404: {
3901
4197
  headers: {
4198
+ "X-Request-Id": components["headers"]["RequestId"];
3902
4199
  [name: string]: unknown;
3903
4200
  };
3904
4201
  content: {
@@ -3928,6 +4225,9 @@ interface operations {
3928
4225
  responses: {
3929
4226
  200: {
3930
4227
  headers: {
4228
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
4229
+ "Idempotent-Replay"?: "true";
4230
+ "X-Request-Id": components["headers"]["RequestId"];
3931
4231
  [name: string]: unknown;
3932
4232
  };
3933
4233
  content: {
@@ -3937,6 +4237,7 @@ interface operations {
3937
4237
  /** @description `event_id` is not `evt_<uuid>`, or `endpoint_id` is not a UUID. */
3938
4238
  400: {
3939
4239
  headers: {
4240
+ "X-Request-Id": components["headers"]["RequestId"];
3940
4241
  [name: string]: unknown;
3941
4242
  };
3942
4243
  content: {
@@ -3946,6 +4247,7 @@ interface operations {
3946
4247
  /** @description Missing or invalid bearer token. */
3947
4248
  401: {
3948
4249
  headers: {
4250
+ "X-Request-Id": components["headers"]["RequestId"];
3949
4251
  [name: string]: unknown;
3950
4252
  };
3951
4253
  content: {
@@ -3955,6 +4257,7 @@ interface operations {
3955
4257
  /** @description Caller lacks `waitlist.webhook.read` (reads) or `waitlist.webhook.manage` (changes, Send test, replay), or Waitlist is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
3956
4258
  403: {
3957
4259
  headers: {
4260
+ "X-Request-Id": components["headers"]["RequestId"];
3958
4261
  [name: string]: unknown;
3959
4262
  };
3960
4263
  content: {
@@ -3964,15 +4267,19 @@ interface operations {
3964
4267
  /** @description No such event here (`WEBHOOK_EVENT_NOT_FOUND`); events are kept for 30 days. Or No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
3965
4268
  404: {
3966
4269
  headers: {
4270
+ "X-Request-Id": components["headers"]["RequestId"];
3967
4271
  [name: string]: unknown;
3968
4272
  };
3969
4273
  content: {
3970
4274
  "application/json": components["schemas"]["ErrorResponseDto"];
3971
4275
  };
3972
4276
  };
3973
- /** @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`). */
4277
+ /** @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). */
3974
4278
  409: {
3975
4279
  headers: {
4280
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
4281
+ "Retry-After"?: number;
4282
+ "X-Request-Id": components["headers"]["RequestId"];
3976
4283
  [name: string]: unknown;
3977
4284
  };
3978
4285
  content: {
@@ -3996,6 +4303,7 @@ interface operations {
3996
4303
  /** @description Webhook. */
3997
4304
  200: {
3998
4305
  headers: {
4306
+ "X-Request-Id": components["headers"]["RequestId"];
3999
4307
  [name: string]: unknown;
4000
4308
  };
4001
4309
  content: {
@@ -4005,6 +4313,7 @@ interface operations {
4005
4313
  /** @description `id` is not a UUID. */
4006
4314
  400: {
4007
4315
  headers: {
4316
+ "X-Request-Id": components["headers"]["RequestId"];
4008
4317
  [name: string]: unknown;
4009
4318
  };
4010
4319
  content: {
@@ -4014,6 +4323,7 @@ interface operations {
4014
4323
  /** @description Webhook not found. */
4015
4324
  404: {
4016
4325
  headers: {
4326
+ "X-Request-Id": components["headers"]["RequestId"];
4017
4327
  [name: string]: unknown;
4018
4328
  };
4019
4329
  content: {
@@ -4037,6 +4347,7 @@ interface operations {
4037
4347
  /** @description Deleted. */
4038
4348
  204: {
4039
4349
  headers: {
4350
+ "X-Request-Id": components["headers"]["RequestId"];
4040
4351
  [name: string]: unknown;
4041
4352
  };
4042
4353
  content?: never;
@@ -4044,6 +4355,7 @@ interface operations {
4044
4355
  /** @description Webhook not found. */
4045
4356
  404: {
4046
4357
  headers: {
4358
+ "X-Request-Id": components["headers"]["RequestId"];
4047
4359
  [name: string]: unknown;
4048
4360
  };
4049
4361
  content: {
@@ -4071,6 +4383,7 @@ interface operations {
4071
4383
  /** @description Updated webhook (secret masked). */
4072
4384
  200: {
4073
4385
  headers: {
4386
+ "X-Request-Id": components["headers"]["RequestId"];
4074
4387
  [name: string]: unknown;
4075
4388
  };
4076
4389
  content: {
@@ -4080,6 +4393,7 @@ interface operations {
4080
4393
  /** @description Webhook not found. */
4081
4394
  404: {
4082
4395
  headers: {
4396
+ "X-Request-Id": components["headers"]["RequestId"];
4083
4397
  [name: string]: unknown;
4084
4398
  };
4085
4399
  content: {
@@ -4110,6 +4424,7 @@ interface operations {
4110
4424
  /** @description Delivery attempts, newest first. */
4111
4425
  200: {
4112
4426
  headers: {
4427
+ "X-Request-Id": components["headers"]["RequestId"];
4113
4428
  [name: string]: unknown;
4114
4429
  };
4115
4430
  content: {
@@ -4119,6 +4434,7 @@ interface operations {
4119
4434
  /** @description Invalid cursor or unknown `status` filter. */
4120
4435
  400: {
4121
4436
  headers: {
4437
+ "X-Request-Id": components["headers"]["RequestId"];
4122
4438
  [name: string]: unknown;
4123
4439
  };
4124
4440
  content: {
@@ -4128,6 +4444,7 @@ interface operations {
4128
4444
  /** @description Webhook not found. */
4129
4445
  404: {
4130
4446
  headers: {
4447
+ "X-Request-Id": components["headers"]["RequestId"];
4131
4448
  [name: string]: unknown;
4132
4449
  };
4133
4450
  content: {
@@ -4151,6 +4468,7 @@ interface operations {
4151
4468
  /** @description Secret rotated. Includes the new plaintext secret exactly once. */
4152
4469
  201: {
4153
4470
  headers: {
4471
+ "X-Request-Id": components["headers"]["RequestId"];
4154
4472
  [name: string]: unknown;
4155
4473
  };
4156
4474
  content: {
@@ -4160,6 +4478,7 @@ interface operations {
4160
4478
  /** @description Webhook not found. */
4161
4479
  404: {
4162
4480
  headers: {
4481
+ "X-Request-Id": components["headers"]["RequestId"];
4163
4482
  [name: string]: unknown;
4164
4483
  };
4165
4484
  content: {
@@ -4187,6 +4506,7 @@ interface operations {
4187
4506
  /** @description Sent. Read the outcome from `/deliveries`. */
4188
4507
  202: {
4189
4508
  headers: {
4509
+ "X-Request-Id": components["headers"]["RequestId"];
4190
4510
  [name: string]: unknown;
4191
4511
  };
4192
4512
  content?: never;
@@ -4194,6 +4514,7 @@ interface operations {
4194
4514
  /** @description Webhook not found. */
4195
4515
  404: {
4196
4516
  headers: {
4517
+ "X-Request-Id": components["headers"]["RequestId"];
4197
4518
  [name: string]: unknown;
4198
4519
  };
4199
4520
  content: {
@@ -4203,6 +4524,7 @@ interface operations {
4203
4524
  /** @description The webhook is switched off. */
4204
4525
  422: {
4205
4526
  headers: {
4527
+ "X-Request-Id": components["headers"]["RequestId"];
4206
4528
  [name: string]: unknown;
4207
4529
  };
4208
4530
  content: {