@productcraft/trawl 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
@@ -435,7 +435,10 @@ interface components {
435
435
  url: string;
436
436
  };
437
437
  CreateWebhookEndpointDto: {
438
- /** @example Production receiver */
438
+ /**
439
+ * @description A label for people.
440
+ * @example Production receiver
441
+ */
439
442
  description?: string | null;
440
443
  /**
441
444
  * @description Create it switched off.
@@ -458,14 +461,20 @@ interface components {
458
461
  url: string;
459
462
  };
460
463
  CreditLedgerEntryDto: {
461
- /** Format: date-time */
464
+ /**
465
+ * Format: date-time
466
+ * @description When the entry was recorded.
467
+ */
462
468
  created_at: string;
463
469
  /**
464
470
  * @description Steps added (positive: allowance, top-up, grant) or used (negative: a job).
465
471
  * @example -12
466
472
  */
467
473
  delta_steps: number;
468
- /** Format: uuid */
474
+ /**
475
+ * Format: uuid
476
+ * @description The entry's id.
477
+ */
469
478
  id: string;
470
479
  /**
471
480
  * Format: uuid
@@ -497,78 +506,158 @@ interface components {
497
506
  */
498
507
  low_balance_threshold_steps: number;
499
508
  };
500
- ErrorResponseDto: {
509
+ ErrorParamDto: {
501
510
  /**
502
- * @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`.
503
- * @example SERVICE_NOT_ENABLED
511
+ * @description The failed rule (class-validator constraint name, e.g. `isEmail`, `isUuid`, `whitelistValidation` for a field the operation does not declare), or `invalid`.
512
+ * @example isEmail
504
513
  */
505
514
  code: string;
506
515
  /**
507
- * @description Human-readable error message. May be a class-validator array on 400.
508
- * @example Policy denies trawl.read on pcft:workspace/7a0c2f7e-2b8d-4f7f-9a51-3f1f0e1f3c11
516
+ * @description What is wrong with it; the same text as the field's entry in an array `message`.
517
+ * @example email must be an email
518
+ */
519
+ message: string;
520
+ /**
521
+ * @description Wire path of the invalid field: `email`, `items.0.display_name`.
522
+ * @example email
523
+ */
524
+ param: string;
525
+ };
526
+ ErrorResponseDto: {
527
+ /**
528
+ * @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>.
529
+ * @example NOT_FOUND
530
+ */
531
+ code: components["schemas"]["TrawlErrorCode"];
532
+ /**
533
+ * @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.
534
+ * @example {
535
+ * "fqdn": "mail.example.com",
536
+ * "reason": "not_verified"
537
+ * }
538
+ */
539
+ details?: {
540
+ [key: string]: unknown;
541
+ };
542
+ /** @description One entry per invalid request field on a `VALIDATION_ERROR`; empty on every other error. */
543
+ errors: components["schemas"]["ErrorParamDto"][];
544
+ /**
545
+ * @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.
546
+ * @example Domain not found
509
547
  */
510
548
  message: string | string[];
549
+ /**
550
+ * @description The request's id, same as the `X-Request-Id` response header. Quote it when contacting support.
551
+ * @example req_6f1c2a9d4b7e4f0a8c3d2e1f0a9b8c7d
552
+ */
553
+ request_id: string;
511
554
  /**
512
555
  * @deprecated
513
556
  * @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.
514
- * @example 403
557
+ * @example 404
515
558
  */
516
559
  statusCode?: number;
517
560
  /**
518
- * @description HTTP status code echoed in the body (`status_code`). `statusCode` carries the same value as a deprecated alias.
519
- * @example 403
561
+ * @description HTTP status code, same as the response status.
562
+ * @example 404
520
563
  */
521
564
  status_code: number;
522
565
  };
523
566
  JobListPaginationDto: {
567
+ /** @description Whether another page follows. */
524
568
  has_more: boolean;
569
+ /** @description Pass as `cursor` to get the next page; null on the last page. */
525
570
  next_cursor: string | null;
526
571
  };
527
572
  JobListResponseDto: {
573
+ /** @description The jobs, newest first. */
528
574
  data: components["schemas"]["JobResponseDto"][];
575
+ /** @description The cursor for the next page. */
529
576
  pagination: components["schemas"]["JobListPaginationDto"];
530
577
  };
531
578
  JobResponseDto: {
579
+ /** @description How many times a worker has picked the job up. */
532
580
  attempts: number;
581
+ /**
582
+ * Format: date-time
583
+ * @description When it ended; null until then.
584
+ */
533
585
  completed_at: string | null;
586
+ /**
587
+ * Format: date-time
588
+ * @description When the job was created.
589
+ */
534
590
  created_at: string;
591
+ /** @description Natural-language description of what to extract. */
535
592
  description: string;
593
+ /**
594
+ * Format: date-time
595
+ * @description When the job was queued.
596
+ */
536
597
  enqueued_at: string;
598
+ /** @description Why the job failed; null unless `status` is `failed`. */
537
599
  error: string | null;
600
+ /**
601
+ * Format: uuid
602
+ * @description The job's id.
603
+ */
538
604
  id: string;
539
605
  /** @description The JSON Schema the job was created with. */
540
606
  json_schema: {
541
607
  [key: string]: unknown;
542
608
  };
609
+ /** @description Maximum number of agent steps (one LLM call each) before the job stops. */
543
610
  max_steps: number;
611
+ /** @description Model tier the worker uses (e.g. `standard`, `pro`). */
544
612
  model_tier: string;
545
613
  /** @description The extracted data, shaped by `json_schema`. Null until the job succeeds. */
546
614
  result: {
547
615
  [key: string]: unknown;
548
616
  } | null;
617
+ /**
618
+ * Format: date-time
619
+ * @description When a worker started it; null while queued.
620
+ */
549
621
  started_at: string | null;
550
- /** @enum {string} */
551
- status: "queued" | "running" | "succeeded" | "failed" | "cancelled";
622
+ /** @description `queued` until a worker picks it up, then `running`; it ends `succeeded` (the result is in `result`), `failed` (see `error`) or `cancelled`. */
623
+ status: components["schemas"]["JobStatus"];
624
+ /** @description Seed URLs the worker starts from; null when none were given. */
552
625
  suggested_urls: string[] | null;
626
+ /** @description Wall-clock timeout for the job, in seconds. */
553
627
  timeout_s: number;
628
+ /**
629
+ * Format: uuid
630
+ * @description The webhook endpoint named at creation to notify when the job ends; null when none.
631
+ */
554
632
  webhook_id: string | null;
633
+ /**
634
+ * Format: uuid
635
+ * @description The workspace that owns the job.
636
+ */
555
637
  workspace_id: string;
556
638
  };
639
+ /** @enum {string} */
640
+ JobStatus: "queued" | "running" | "succeeded" | "failed" | "cancelled";
557
641
  ListWebhookEndpointsResponseDto: {
642
+ /** @description The endpoints, newest first. */
558
643
  data: components["schemas"]["WebhookEndpointDto"][];
559
644
  /** @description Always one page (an endpoint limit applies). */
560
645
  pagination: components["schemas"]["WebhookPaginationDto"];
561
646
  };
562
647
  ListWebhookEventTypesResponseDto: {
648
+ /** @description Every event type this product sends. */
563
649
  data: components["schemas"]["WebhookEventTypeDto"][];
564
650
  };
565
651
  ListWebhookEventsResponseDto: {
652
+ /** @description The events, newest first. */
566
653
  data: components["schemas"]["WebhookEventDto"][];
654
+ /** @description The cursor for the next page. */
567
655
  pagination: components["schemas"]["WebhookPaginationDto"];
568
656
  };
569
657
  ReplayWebhookEventResponseDto: {
570
658
  /** @description One attempt per endpoint it was sent to. */
571
659
  attempts: components["schemas"]["WebhookDeliveryAttemptDto"][];
660
+ /** @description The replayed event (the same id as the original). */
572
661
  event_id: string;
573
662
  };
574
663
  RotateWebhookSecretDto: {
@@ -586,6 +675,12 @@ interface components {
586
675
  */
587
676
  event_type: "job.succeeded" | "job.failed" | "credits.low";
588
677
  };
678
+ /** @enum {string} */
679
+ StatsGranularity: "day";
680
+ /** @enum {string} */
681
+ StatsWindow: "1d" | "7d" | "30d";
682
+ /** @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>. */
683
+ TrawlErrorCode: ("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" | "TOO_MANY_ACTIVE_JOBS" | "TRAWL_CREDITS_EXHAUSTED") | string;
589
684
  TrawlStatsInWindowDto: {
590
685
  /**
591
686
  * @description Of those, jobs that failed.
@@ -608,19 +703,19 @@ interface components {
608
703
  */
609
704
  succeeded: number;
610
705
  };
706
+ /** @enum {string} */
707
+ TrawlStatsMetric: "jobs";
611
708
  TrawlStatsSeriesDto: {
612
709
  /**
613
710
  * @description Bucket width.
614
711
  * @example day
615
- * @enum {string}
616
712
  */
617
- granularity: "day";
713
+ granularity: components["schemas"]["StatsGranularity"];
618
714
  /**
619
715
  * @description Jobs created per UTC day in the workspace, in any status.
620
716
  * @example jobs
621
- * @enum {string}
622
717
  */
623
- metric: "jobs";
718
+ metric: components["schemas"]["TrawlStatsMetric"];
624
719
  /** @description Dense and zero-filled: one point per UTC day in the window, oldest first, ending today. */
625
720
  points: components["schemas"]["TrawlStatsSeriesPointDto"][];
626
721
  };
@@ -671,9 +766,8 @@ interface components {
671
766
  /**
672
767
  * @description Window the counts cover.
673
768
  * @example 30d
674
- * @enum {string}
675
769
  */
676
- window: "1d" | "7d" | "30d";
770
+ window: components["schemas"]["StatsWindow"];
677
771
  };
678
772
  UpdateWebhookDto: {
679
773
  /** @description Pause/resume the webhook. Setting active=true clears auto-disable. */
@@ -682,6 +776,7 @@ interface components {
682
776
  url?: string;
683
777
  };
684
778
  UpdateWebhookEndpointDto: {
779
+ /** @description A new label; null clears it. */
685
780
  description?: string | null;
686
781
  /** @description Switch it on or off. Switching on also clears an automatic disable. */
687
782
  enabled?: boolean;
@@ -689,10 +784,13 @@ interface components {
689
784
  event_types?: ("job.succeeded" | "job.failed" | "credits.low")[];
690
785
  /**
691
786
  * Format: uri
787
+ * @description A new absolute https:// URL on a public host.
692
788
  * @example https://api.acme.com/webhooks
693
789
  */
694
790
  url?: string;
695
791
  };
792
+ /** @enum {string} */
793
+ WebhookAttemptTrigger: "automatic" | "replay" | "test";
696
794
  WebhookCreateResponseDto: {
697
795
  /** @description Whether it receives events (`enabled` on the new routes). */
698
796
  active: boolean;
@@ -727,18 +825,37 @@ interface components {
727
825
  WebhookDeliveryAttemptDto: {
728
826
  /** @description 1 for the first delivery; retries and replays count up. */
729
827
  attempt_number: number;
730
- /** Format: date-time */
828
+ /**
829
+ * Format: date-time
830
+ * @description When the attempt was made.
831
+ */
731
832
  attempted_at: string;
732
- /** Format: uuid */
833
+ /**
834
+ * Format: uuid
835
+ * @description The endpoint it was delivered to.
836
+ */
733
837
  endpoint_id: string;
734
- /** @example request timed out */
838
+ /**
839
+ * @description Why the attempt failed when no 2xx came back; null on success.
840
+ * @example request timed out
841
+ */
735
842
  error_message: string | null;
736
- /** @example evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f */
843
+ /**
844
+ * @description The event that was delivered.
845
+ * @example evt_3f0c3c1e-8a2b-4c55-9d3f-0a1b2c3d4e5f
846
+ */
737
847
  event_id: string;
738
- /** @example user.created */
848
+ /**
849
+ * @description The event's type.
850
+ * @example user.created
851
+ */
739
852
  event_type: string;
740
- /** Format: uuid */
853
+ /**
854
+ * Format: uuid
855
+ * @description The attempt's id.
856
+ */
741
857
  id: string;
858
+ /** @description Milliseconds until the response; null when none came back. */
742
859
  latency_ms: number | null;
743
860
  /** @description The first 1 KiB of the response body. */
744
861
  response_body: string | null;
@@ -746,11 +863,8 @@ interface components {
746
863
  status_code: number | null;
747
864
  /** @description True for a 2xx response. */
748
865
  succeeded: boolean;
749
- /**
750
- * @description `automatic` (first delivery or a retry), `replay` or `test`.
751
- * @enum {string}
752
- */
753
- trigger: "automatic" | "replay" | "test";
866
+ /** @description `automatic` (first delivery or a retry), `replay` or `test`. */
867
+ trigger: components["schemas"]["WebhookAttemptTrigger"];
754
868
  /**
755
869
  * Format: uri
756
870
  * @description Where it was sent.
@@ -782,17 +896,28 @@ interface components {
782
896
  /** Format: uuid */
783
897
  webhook_id: string;
784
898
  };
899
+ /** @enum {string} */
900
+ WebhookEndpointDisabledReason: "manual" | "failing";
785
901
  WebhookEndpointDto: {
786
902
  /** @description Failed automatic deliveries in a row; a success resets it. */
787
903
  consecutive_failures: number;
788
- /** Format: date-time */
904
+ /**
905
+ * Format: date-time
906
+ * @description When the endpoint was created.
907
+ */
789
908
  created_at: string;
790
- /** @example Production receiver */
909
+ /**
910
+ * @description A label for people; null when unset.
911
+ * @example Production receiver
912
+ */
791
913
  description: string | null;
792
- /** Format: date-time */
914
+ /**
915
+ * Format: date-time
916
+ * @description When it was switched off; null while enabled.
917
+ */
793
918
  disabled_at: string | null;
794
- /** @enum {string|null} */
795
- disabled_reason: "manual" | "failing" | null;
919
+ /** @description `manual`: switched off by a caller. `failing`: switched off automatically after failed deliveries. Null while enabled. */
920
+ disabled_reason: components["schemas"]["WebhookEndpointDisabledReason"] | null;
796
921
  /** @description The on/off switch (`PATCH … { enabled }`). */
797
922
  enabled: boolean;
798
923
  /**
@@ -805,7 +930,10 @@ interface components {
805
930
  * @description Start of the current failure streak.
806
931
  */
807
932
  first_failure_at: string | null;
808
- /** Format: uuid */
933
+ /**
934
+ * Format: uuid
935
+ * @description The endpoint's id.
936
+ */
809
937
  id: string;
810
938
  /** @description True for endpoints carried over from the product's previous webhook system: they also receive the old signature header until its sunset date. */
811
939
  legacy_signature: boolean;
@@ -828,30 +956,42 @@ interface components {
828
956
  * @example x9Q=
829
957
  */
830
958
  signing_secret_hint: string;
959
+ /** @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. */
960
+ status: components["schemas"]["WebhookEndpointStatus"];
831
961
  /**
832
- * @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.
833
- * @enum {string}
962
+ * Format: date-time
963
+ * @description When the endpoint last changed.
834
964
  */
835
- status: "enabled" | "disabled" | "auto_disabled";
836
- /** Format: date-time */
837
965
  updated_at: string;
838
966
  /**
839
967
  * Format: uri
968
+ * @description Where events are sent.
840
969
  * @example https://api.acme.com/webhooks
841
970
  */
842
971
  url: string;
843
972
  };
973
+ /** @enum {string} */
974
+ WebhookEndpointStatus: "enabled" | "disabled" | "auto_disabled";
844
975
  WebhookEndpointWithSecretDto: {
845
976
  /** @description Failed automatic deliveries in a row; a success resets it. */
846
977
  consecutive_failures: number;
847
- /** Format: date-time */
978
+ /**
979
+ * Format: date-time
980
+ * @description When the endpoint was created.
981
+ */
848
982
  created_at: string;
849
- /** @example Production receiver */
983
+ /**
984
+ * @description A label for people; null when unset.
985
+ * @example Production receiver
986
+ */
850
987
  description: string | null;
851
- /** Format: date-time */
988
+ /**
989
+ * Format: date-time
990
+ * @description When it was switched off; null while enabled.
991
+ */
852
992
  disabled_at: string | null;
853
- /** @enum {string|null} */
854
- disabled_reason: "manual" | "failing" | null;
993
+ /** @description `manual`: switched off by a caller. `failing`: switched off automatically after failed deliveries. Null while enabled. */
994
+ disabled_reason: components["schemas"]["WebhookEndpointDisabledReason"] | null;
855
995
  /** @description The on/off switch (`PATCH … { enabled }`). */
856
996
  enabled: boolean;
857
997
  /**
@@ -864,7 +1004,10 @@ interface components {
864
1004
  * @description Start of the current failure streak.
865
1005
  */
866
1006
  first_failure_at: string | null;
867
- /** Format: uuid */
1007
+ /**
1008
+ * Format: uuid
1009
+ * @description The endpoint's id.
1010
+ */
868
1011
  id: string;
869
1012
  /** @description True for endpoints carried over from the product's previous webhook system: they also receive the old signature header until its sunset date. */
870
1013
  legacy_signature: boolean;
@@ -892,15 +1035,16 @@ interface components {
892
1035
  * @example x9Q=
893
1036
  */
894
1037
  signing_secret_hint: string;
1038
+ /** @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. */
1039
+ status: components["schemas"]["WebhookEndpointStatus"];
895
1040
  /**
896
- * @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.
897
- * @enum {string}
1041
+ * Format: date-time
1042
+ * @description When the endpoint last changed.
898
1043
  */
899
- status: "enabled" | "disabled" | "auto_disabled";
900
- /** Format: date-time */
901
1044
  updated_at: string;
902
1045
  /**
903
1046
  * Format: uri
1047
+ * @description Where events are sent.
904
1048
  * @example https://api.acme.com/webhooks
905
1049
  */
906
1050
  url: string;
@@ -908,15 +1052,22 @@ interface components {
908
1052
  WebhookEventDeliveryDto: {
909
1053
  /** @description Number of the latest attempt; retries and replays count up. */
910
1054
  attempt_number: number;
911
- /** Format: date-time */
1055
+ /**
1056
+ * Format: date-time
1057
+ * @description When the latest attempt was made.
1058
+ */
912
1059
  attempted_at: string;
913
- /** Format: uuid */
1060
+ /**
1061
+ * Format: uuid
1062
+ * @description The endpoint.
1063
+ */
914
1064
  endpoint_id: string;
915
1065
  /**
916
1066
  * Format: date-time
917
1067
  * @description When the next automatic attempt is due; null when none is queued.
918
1068
  */
919
1069
  next_attempt_at: string | null;
1070
+ /** @description HTTP status of the latest attempt; null when no response came back. */
920
1071
  status_code: number | null;
921
1072
  /** @description True when the latest attempt got a 2xx. */
922
1073
  succeeded: boolean;
@@ -924,7 +1075,10 @@ interface components {
924
1075
  WebhookEventDetailDto: {
925
1076
  /** @description Every attempt, newest first. */
926
1077
  attempts: components["schemas"]["WebhookDeliveryAttemptDto"][];
927
- /** Format: date-time */
1078
+ /**
1079
+ * Format: date-time
1080
+ * @description When the event happened.
1081
+ */
928
1082
  created_at: string;
929
1083
  /** @description Latest attempt per endpoint (an endpoint whose first attempt is still queued is not listed yet). */
930
1084
  deliveries: components["schemas"]["WebhookEventDeliveryDto"][];
@@ -937,21 +1091,21 @@ interface components {
937
1091
  payload: {
938
1092
  [key: string]: unknown;
939
1093
  };
940
- /**
941
- * @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.
942
- * @enum {string}
943
- */
944
- status: "pending" | "delivered" | "failed" | "not_sent";
1094
+ /** @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. */
1095
+ status: components["schemas"]["WebhookEventStatus"];
945
1096
  /** @description Made by "Send test". */
946
1097
  test: boolean;
947
1098
  /**
1099
+ * @description The event type (one of this product's catalogue).
948
1100
  * @example job.succeeded
949
- * @enum {string}
950
1101
  */
951
- type: "job.succeeded" | "job.failed" | "credits.low";
1102
+ type: components["schemas"]["WebhookEventType"];
952
1103
  };
953
1104
  WebhookEventDto: {
954
- /** Format: date-time */
1105
+ /**
1106
+ * Format: date-time
1107
+ * @description When the event happened.
1108
+ */
955
1109
  created_at: string;
956
1110
  /** @description Latest attempt per endpoint (an endpoint whose first attempt is still queued is not listed yet). */
957
1111
  deliveries: components["schemas"]["WebhookEventDeliveryDto"][];
@@ -964,36 +1118,40 @@ interface components {
964
1118
  payload: {
965
1119
  [key: string]: unknown;
966
1120
  };
967
- /**
968
- * @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.
969
- * @enum {string}
970
- */
971
- status: "pending" | "delivered" | "failed" | "not_sent";
1121
+ /** @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. */
1122
+ status: components["schemas"]["WebhookEventStatus"];
972
1123
  /** @description Made by "Send test". */
973
1124
  test: boolean;
974
1125
  /**
1126
+ * @description The event type (one of this product's catalogue).
975
1127
  * @example job.succeeded
976
- * @enum {string}
977
1128
  */
978
- type: "job.succeeded" | "job.failed" | "credits.low";
1129
+ type: components["schemas"]["WebhookEventType"];
979
1130
  };
1131
+ /** @enum {string} */
1132
+ WebhookEventStatus: "pending" | "delivered" | "failed" | "not_sent";
1133
+ /** @enum {string} */
1134
+ WebhookEventType: "job.succeeded" | "job.failed" | "credits.low";
980
1135
  WebhookEventTypeDto: {
981
1136
  /**
982
1137
  * @description Group shown in the event picker.
983
1138
  * @example Users
984
1139
  */
985
1140
  category: string;
986
- /** @example A user signed up or was created by an admin. */
1141
+ /**
1142
+ * @description When this event is sent.
1143
+ * @example A user signed up or was created by an admin.
1144
+ */
987
1145
  description: string;
988
1146
  /** @description An example `data` object; "Send test" delivers exactly this. */
989
1147
  example: {
990
1148
  [key: string]: unknown;
991
1149
  };
992
1150
  /**
1151
+ * @description The event type (one of this product's catalogue).
993
1152
  * @example job.succeeded
994
- * @enum {string}
995
1153
  */
996
- type: "job.succeeded" | "job.failed" | "credits.low";
1154
+ type: components["schemas"]["WebhookEventType"];
997
1155
  };
998
1156
  WebhookListPaginationDto: {
999
1157
  has_more: boolean;
@@ -1052,7 +1210,28 @@ interface components {
1052
1210
  responses: never;
1053
1211
  parameters: never;
1054
1212
  requestBodies: never;
1055
- headers: never;
1213
+ headers: {
1214
+ /** @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. */
1215
+ RequestId: string;
1216
+ /** @description Seconds to wait before retrying. Sent on every 429. */
1217
+ "Retry-After": number;
1218
+ /** @description Seconds to wait, when the per-minute IP limit tripped. */
1219
+ "Retry-After-long": number;
1220
+ /** @description Seconds to wait, when the per-second IP limit tripped. */
1221
+ "Retry-After-short": number;
1222
+ /** @description Requests allowed per minute from this client IP (600). */
1223
+ "X-RateLimit-Limit-long": number;
1224
+ /** @description Requests allowed per second from this client IP (20). */
1225
+ "X-RateLimit-Limit-short": number;
1226
+ /** @description Requests left in the current one-minute window. */
1227
+ "X-RateLimit-Remaining-long": number;
1228
+ /** @description Requests left in the current one-second window. */
1229
+ "X-RateLimit-Remaining-short": number;
1230
+ /** @description Seconds until the one-minute window resets. */
1231
+ "X-RateLimit-Reset-long": number;
1232
+ /** @description Seconds until the one-second window resets. */
1233
+ "X-RateLimit-Reset-short": number;
1234
+ };
1056
1235
  pathItems: never;
1057
1236
  }
1058
1237
  interface operations {
@@ -1064,6 +1243,7 @@ interface operations {
1064
1243
  };
1065
1244
  header?: never;
1066
1245
  path: {
1246
+ /** @description Id of the workspace. */
1067
1247
  workspace_id: string;
1068
1248
  };
1069
1249
  cookie?: never;
@@ -1073,6 +1253,13 @@ interface operations {
1073
1253
  /** @description Balance, low-balance state and recent entries. */
1074
1254
  200: {
1075
1255
  headers: {
1256
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1257
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1258
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1259
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1260
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1261
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1262
+ "X-Request-Id": components["headers"]["RequestId"];
1076
1263
  [name: string]: unknown;
1077
1264
  };
1078
1265
  content: {
@@ -1082,6 +1269,7 @@ interface operations {
1082
1269
  /** @description Missing or invalid bearer token. */
1083
1270
  401: {
1084
1271
  headers: {
1272
+ "X-Request-Id": components["headers"]["RequestId"];
1085
1273
  [name: string]: unknown;
1086
1274
  };
1087
1275
  content: {
@@ -1091,6 +1279,20 @@ interface operations {
1091
1279
  /** @description Caller lacks `trawl.read`, or the service is not enabled. */
1092
1280
  403: {
1093
1281
  headers: {
1282
+ "X-Request-Id": components["headers"]["RequestId"];
1283
+ [name: string]: unknown;
1284
+ };
1285
+ content: {
1286
+ "application/json": components["schemas"]["ErrorResponseDto"];
1287
+ };
1288
+ };
1289
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
1290
+ 429: {
1291
+ headers: {
1292
+ "Retry-After": components["headers"]["Retry-After"];
1293
+ "Retry-After-long": components["headers"]["Retry-After-long"];
1294
+ "Retry-After-short": components["headers"]["Retry-After-short"];
1295
+ "X-Request-Id": components["headers"]["RequestId"];
1094
1296
  [name: string]: unknown;
1095
1297
  };
1096
1298
  content: {
@@ -1103,13 +1305,15 @@ interface operations {
1103
1305
  parameters: {
1104
1306
  query?: {
1105
1307
  /** @description Filter by job status. */
1106
- status?: "queued" | "running" | "succeeded" | "failed" | "cancelled";
1308
+ status?: components["schemas"]["JobStatus"];
1107
1309
  /** @description Opaque cursor for pagination. */
1108
1310
  cursor?: string;
1311
+ /** @description Page size. */
1109
1312
  limit?: number;
1110
1313
  };
1111
1314
  header?: never;
1112
1315
  path: {
1316
+ /** @description Id of the workspace. */
1113
1317
  workspace_id: string;
1114
1318
  };
1115
1319
  cookie?: never;
@@ -1119,6 +1323,13 @@ interface operations {
1119
1323
  /** @description Page of jobs with pagination cursor. */
1120
1324
  200: {
1121
1325
  headers: {
1326
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1327
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1328
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1329
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1330
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1331
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1332
+ "X-Request-Id": components["headers"]["RequestId"];
1122
1333
  [name: string]: unknown;
1123
1334
  };
1124
1335
  content: {
@@ -1128,6 +1339,20 @@ interface operations {
1128
1339
  /** @description Caller lacks `trawl.list`, or workspace has not enabled the `trawl` service. */
1129
1340
  403: {
1130
1341
  headers: {
1342
+ "X-Request-Id": components["headers"]["RequestId"];
1343
+ [name: string]: unknown;
1344
+ };
1345
+ content: {
1346
+ "application/json": components["schemas"]["ErrorResponseDto"];
1347
+ };
1348
+ };
1349
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
1350
+ 429: {
1351
+ headers: {
1352
+ "Retry-After": components["headers"]["Retry-After"];
1353
+ "Retry-After-long": components["headers"]["Retry-After-long"];
1354
+ "Retry-After-short": components["headers"]["Retry-After-short"];
1355
+ "X-Request-Id": components["headers"]["RequestId"];
1131
1356
  [name: string]: unknown;
1132
1357
  };
1133
1358
  content: {
@@ -1144,6 +1369,7 @@ interface operations {
1144
1369
  "Idempotency-Key"?: string;
1145
1370
  };
1146
1371
  path: {
1372
+ /** @description Id of the workspace. */
1147
1373
  workspace_id: string;
1148
1374
  };
1149
1375
  cookie?: never;
@@ -1157,6 +1383,15 @@ interface operations {
1157
1383
  /** @description Job created and queued. */
1158
1384
  201: {
1159
1385
  headers: {
1386
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
1387
+ "Idempotent-Replay"?: "true";
1388
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1389
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1390
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1391
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1392
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1393
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1394
+ "X-Request-Id": components["headers"]["RequestId"];
1160
1395
  [name: string]: unknown;
1161
1396
  };
1162
1397
  content: {
@@ -1166,6 +1401,7 @@ interface operations {
1166
1401
  /** @description Invalid JSON Schema (must be a non-empty `type: object`). */
1167
1402
  400: {
1168
1403
  headers: {
1404
+ "X-Request-Id": components["headers"]["RequestId"];
1169
1405
  [name: string]: unknown;
1170
1406
  };
1171
1407
  content: {
@@ -1175,15 +1411,32 @@ interface operations {
1175
1411
  /** @description Caller lacks `trawl.create`, or workspace has not enabled the `trawl` service. */
1176
1412
  403: {
1177
1413
  headers: {
1414
+ "X-Request-Id": components["headers"]["RequestId"];
1178
1415
  [name: string]: unknown;
1179
1416
  };
1180
1417
  content: {
1181
1418
  "application/json": components["schemas"]["ErrorResponseDto"];
1182
1419
  };
1183
1420
  };
1184
- /** @description Rate limited. `RATE_LIMITED` — submission window exceeded (default 10/min per workspace); the `Retry-After` header gives the seconds until the window resets. `TOO_MANY_ACTIVE_JOBS` — too many queued/running jobs (default 25); retry once some finish. */
1421
+ /** @description 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). */
1422
+ 409: {
1423
+ headers: {
1424
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
1425
+ "Retry-After"?: number;
1426
+ "X-Request-Id": components["headers"]["RequestId"];
1427
+ [name: string]: unknown;
1428
+ };
1429
+ content: {
1430
+ "application/json": components["schemas"]["ErrorResponseDto"];
1431
+ };
1432
+ };
1433
+ /** @description Rate limited. `RATE_LIMITED` — submission window exceeded (default 10/min per workspace); the `Retry-After` header gives the seconds until the window resets. `TOO_MANY_ACTIVE_JOBS` — too many queued/running jobs (default 25); retry once some finish. Per-IP limit: more than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
1185
1434
  429: {
1186
1435
  headers: {
1436
+ "Retry-After": components["headers"]["Retry-After"];
1437
+ "Retry-After-long": components["headers"]["Retry-After-long"];
1438
+ "Retry-After-short": components["headers"]["Retry-After-short"];
1439
+ "X-Request-Id": components["headers"]["RequestId"];
1187
1440
  [name: string]: unknown;
1188
1441
  };
1189
1442
  content: {
@@ -1197,7 +1450,9 @@ interface operations {
1197
1450
  query?: never;
1198
1451
  header?: never;
1199
1452
  path: {
1453
+ /** @description Id of the workspace. */
1200
1454
  workspace_id: string;
1455
+ /** @description Id of the job. */
1201
1456
  id: string;
1202
1457
  };
1203
1458
  cookie?: never;
@@ -1207,6 +1462,13 @@ interface operations {
1207
1462
  /** @description Job row. */
1208
1463
  200: {
1209
1464
  headers: {
1465
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1466
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1467
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1468
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1469
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1470
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1471
+ "X-Request-Id": components["headers"]["RequestId"];
1210
1472
  [name: string]: unknown;
1211
1473
  };
1212
1474
  content: {
@@ -1216,6 +1478,20 @@ interface operations {
1216
1478
  /** @description Job not found in this workspace. */
1217
1479
  404: {
1218
1480
  headers: {
1481
+ "X-Request-Id": components["headers"]["RequestId"];
1482
+ [name: string]: unknown;
1483
+ };
1484
+ content: {
1485
+ "application/json": components["schemas"]["ErrorResponseDto"];
1486
+ };
1487
+ };
1488
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
1489
+ 429: {
1490
+ headers: {
1491
+ "Retry-After": components["headers"]["Retry-After"];
1492
+ "Retry-After-long": components["headers"]["Retry-After-long"];
1493
+ "Retry-After-short": components["headers"]["Retry-After-short"];
1494
+ "X-Request-Id": components["headers"]["RequestId"];
1219
1495
  [name: string]: unknown;
1220
1496
  };
1221
1497
  content: {
@@ -1229,7 +1505,9 @@ interface operations {
1229
1505
  query?: never;
1230
1506
  header?: never;
1231
1507
  path: {
1508
+ /** @description Id of the workspace. */
1232
1509
  workspace_id: string;
1510
+ /** @description Id of the job. */
1233
1511
  id: string;
1234
1512
  };
1235
1513
  cookie?: never;
@@ -1239,6 +1517,13 @@ interface operations {
1239
1517
  /** @description Job cancelled. */
1240
1518
  200: {
1241
1519
  headers: {
1520
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1521
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1522
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1523
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1524
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1525
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1526
+ "X-Request-Id": components["headers"]["RequestId"];
1242
1527
  [name: string]: unknown;
1243
1528
  };
1244
1529
  content: {
@@ -1248,6 +1533,7 @@ interface operations {
1248
1533
  /** @description Job not found in this workspace. */
1249
1534
  404: {
1250
1535
  headers: {
1536
+ "X-Request-Id": components["headers"]["RequestId"];
1251
1537
  [name: string]: unknown;
1252
1538
  };
1253
1539
  content: {
@@ -1257,6 +1543,20 @@ interface operations {
1257
1543
  /** @description Job is already in a terminal state and cannot be cancelled. */
1258
1544
  422: {
1259
1545
  headers: {
1546
+ "X-Request-Id": components["headers"]["RequestId"];
1547
+ [name: string]: unknown;
1548
+ };
1549
+ content: {
1550
+ "application/json": components["schemas"]["ErrorResponseDto"];
1551
+ };
1552
+ };
1553
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
1554
+ 429: {
1555
+ headers: {
1556
+ "Retry-After": components["headers"]["Retry-After"];
1557
+ "Retry-After-long": components["headers"]["Retry-After-long"];
1558
+ "Retry-After-short": components["headers"]["Retry-After-short"];
1559
+ "X-Request-Id": components["headers"]["RequestId"];
1260
1560
  [name: string]: unknown;
1261
1561
  };
1262
1562
  content: {
@@ -1269,7 +1569,7 @@ interface operations {
1269
1569
  parameters: {
1270
1570
  query?: {
1271
1571
  /** @description Window for `in_window` and the length of `series`, in UTC days ending today. */
1272
- window?: "1d" | "7d" | "30d";
1572
+ window?: components["schemas"]["StatsWindow"];
1273
1573
  };
1274
1574
  header?: never;
1275
1575
  path: {
@@ -1283,6 +1583,13 @@ interface operations {
1283
1583
  /** @description Trawl stats. */
1284
1584
  200: {
1285
1585
  headers: {
1586
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1587
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1588
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1589
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1590
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1591
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1592
+ "X-Request-Id": components["headers"]["RequestId"];
1286
1593
  [name: string]: unknown;
1287
1594
  };
1288
1595
  content: {
@@ -1292,6 +1599,7 @@ interface operations {
1292
1599
  /** @description `window` is not one of 1d, 7d, 30d. */
1293
1600
  400: {
1294
1601
  headers: {
1602
+ "X-Request-Id": components["headers"]["RequestId"];
1295
1603
  [name: string]: unknown;
1296
1604
  };
1297
1605
  content: {
@@ -1301,6 +1609,7 @@ interface operations {
1301
1609
  /** @description Caller lacks `trawl.read` on the workspace, or Trawl is not enabled on it (`SERVICE_NOT_ENABLED`). */
1302
1610
  403: {
1303
1611
  headers: {
1612
+ "X-Request-Id": components["headers"]["RequestId"];
1304
1613
  [name: string]: unknown;
1305
1614
  };
1306
1615
  content: {
@@ -1310,6 +1619,20 @@ interface operations {
1310
1619
  /** @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. */
1311
1620
  404: {
1312
1621
  headers: {
1622
+ "X-Request-Id": components["headers"]["RequestId"];
1623
+ [name: string]: unknown;
1624
+ };
1625
+ content: {
1626
+ "application/json": components["schemas"]["ErrorResponseDto"];
1627
+ };
1628
+ };
1629
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
1630
+ 429: {
1631
+ headers: {
1632
+ "Retry-After": components["headers"]["Retry-After"];
1633
+ "Retry-After-long": components["headers"]["Retry-After-long"];
1634
+ "Retry-After-short": components["headers"]["Retry-After-short"];
1635
+ "X-Request-Id": components["headers"]["RequestId"];
1313
1636
  [name: string]: unknown;
1314
1637
  };
1315
1638
  content: {
@@ -1328,6 +1651,7 @@ interface operations {
1328
1651
  };
1329
1652
  header?: never;
1330
1653
  path: {
1654
+ /** @description Id of the workspace. */
1331
1655
  workspace_id: string;
1332
1656
  };
1333
1657
  cookie?: never;
@@ -1337,6 +1661,13 @@ interface operations {
1337
1661
  /** @description Page of webhooks with a pagination cursor. */
1338
1662
  200: {
1339
1663
  headers: {
1664
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1665
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1666
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1667
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1668
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1669
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1670
+ "X-Request-Id": components["headers"]["RequestId"];
1340
1671
  [name: string]: unknown;
1341
1672
  };
1342
1673
  content: {
@@ -1346,6 +1677,20 @@ interface operations {
1346
1677
  /** @description Invalid cursor or limit. */
1347
1678
  400: {
1348
1679
  headers: {
1680
+ "X-Request-Id": components["headers"]["RequestId"];
1681
+ [name: string]: unknown;
1682
+ };
1683
+ content: {
1684
+ "application/json": components["schemas"]["ErrorResponseDto"];
1685
+ };
1686
+ };
1687
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
1688
+ 429: {
1689
+ headers: {
1690
+ "Retry-After": components["headers"]["Retry-After"];
1691
+ "Retry-After-long": components["headers"]["Retry-After-long"];
1692
+ "Retry-After-short": components["headers"]["Retry-After-short"];
1693
+ "X-Request-Id": components["headers"]["RequestId"];
1349
1694
  [name: string]: unknown;
1350
1695
  };
1351
1696
  content: {
@@ -1362,6 +1707,7 @@ interface operations {
1362
1707
  "Idempotency-Key"?: string;
1363
1708
  };
1364
1709
  path: {
1710
+ /** @description Id of the workspace. */
1365
1711
  workspace_id: string;
1366
1712
  };
1367
1713
  cookie?: never;
@@ -1375,6 +1721,15 @@ interface operations {
1375
1721
  /** @description Webhook created. Includes plaintext `signing_secret` exactly once. */
1376
1722
  201: {
1377
1723
  headers: {
1724
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
1725
+ "Idempotent-Replay"?: "true";
1726
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1727
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1728
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1729
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1730
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1731
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1732
+ "X-Request-Id": components["headers"]["RequestId"];
1378
1733
  [name: string]: unknown;
1379
1734
  };
1380
1735
  content: {
@@ -1384,15 +1739,32 @@ interface operations {
1384
1739
  /** @description Invalid URL (must be public HTTPS). */
1385
1740
  400: {
1386
1741
  headers: {
1742
+ "X-Request-Id": components["headers"]["RequestId"];
1387
1743
  [name: string]: unknown;
1388
1744
  };
1389
1745
  content: {
1390
1746
  "application/json": components["schemas"]["ErrorResponseDto"];
1391
1747
  };
1392
1748
  };
1393
- /** @description The workspace already has 10 webhooks. */
1749
+ /** @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). */
1394
1750
  409: {
1395
1751
  headers: {
1752
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
1753
+ "Retry-After"?: number;
1754
+ "X-Request-Id": components["headers"]["RequestId"];
1755
+ [name: string]: unknown;
1756
+ };
1757
+ content: {
1758
+ "application/json": components["schemas"]["ErrorResponseDto"];
1759
+ };
1760
+ };
1761
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
1762
+ 429: {
1763
+ headers: {
1764
+ "Retry-After": components["headers"]["Retry-After"];
1765
+ "Retry-After-long": components["headers"]["Retry-After-long"];
1766
+ "Retry-After-short": components["headers"]["Retry-After-short"];
1767
+ "X-Request-Id": components["headers"]["RequestId"];
1396
1768
  [name: string]: unknown;
1397
1769
  };
1398
1770
  content: {
@@ -1406,6 +1778,7 @@ interface operations {
1406
1778
  query?: never;
1407
1779
  header?: never;
1408
1780
  path: {
1781
+ /** @description Id of the workspace. */
1409
1782
  workspace_id: string;
1410
1783
  };
1411
1784
  cookie?: never;
@@ -1414,6 +1787,13 @@ interface operations {
1414
1787
  responses: {
1415
1788
  200: {
1416
1789
  headers: {
1790
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1791
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1792
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1793
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1794
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1795
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1796
+ "X-Request-Id": components["headers"]["RequestId"];
1417
1797
  [name: string]: unknown;
1418
1798
  };
1419
1799
  content: {
@@ -1423,6 +1803,7 @@ interface operations {
1423
1803
  /** @description The scope id in the path is malformed. */
1424
1804
  400: {
1425
1805
  headers: {
1806
+ "X-Request-Id": components["headers"]["RequestId"];
1426
1807
  [name: string]: unknown;
1427
1808
  };
1428
1809
  content: {
@@ -1432,6 +1813,7 @@ interface operations {
1432
1813
  /** @description Missing or invalid bearer token. */
1433
1814
  401: {
1434
1815
  headers: {
1816
+ "X-Request-Id": components["headers"]["RequestId"];
1435
1817
  [name: string]: unknown;
1436
1818
  };
1437
1819
  content: {
@@ -1441,6 +1823,20 @@ interface operations {
1441
1823
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
1442
1824
  403: {
1443
1825
  headers: {
1826
+ "X-Request-Id": components["headers"]["RequestId"];
1827
+ [name: string]: unknown;
1828
+ };
1829
+ content: {
1830
+ "application/json": components["schemas"]["ErrorResponseDto"];
1831
+ };
1832
+ };
1833
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
1834
+ 429: {
1835
+ headers: {
1836
+ "Retry-After": components["headers"]["Retry-After"];
1837
+ "Retry-After-long": components["headers"]["Retry-After-long"];
1838
+ "Retry-After-short": components["headers"]["Retry-After-short"];
1839
+ "X-Request-Id": components["headers"]["RequestId"];
1444
1840
  [name: string]: unknown;
1445
1841
  };
1446
1842
  content: {
@@ -1457,6 +1853,7 @@ interface operations {
1457
1853
  "Idempotency-Key"?: string;
1458
1854
  };
1459
1855
  path: {
1856
+ /** @description Id of the workspace. */
1460
1857
  workspace_id: string;
1461
1858
  };
1462
1859
  cookie?: never;
@@ -1469,6 +1866,15 @@ interface operations {
1469
1866
  responses: {
1470
1867
  201: {
1471
1868
  headers: {
1869
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
1870
+ "Idempotent-Replay"?: "true";
1871
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1872
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1873
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1874
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1875
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1876
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1877
+ "X-Request-Id": components["headers"]["RequestId"];
1472
1878
  [name: string]: unknown;
1473
1879
  };
1474
1880
  content: {
@@ -1478,6 +1884,7 @@ interface operations {
1478
1884
  /** @description Validation failure: URL not https with a public host, or an unknown event type (`WEBHOOK_EVENT_TYPE_UNKNOWN`). */
1479
1885
  400: {
1480
1886
  headers: {
1887
+ "X-Request-Id": components["headers"]["RequestId"];
1481
1888
  [name: string]: unknown;
1482
1889
  };
1483
1890
  content: {
@@ -1487,6 +1894,7 @@ interface operations {
1487
1894
  /** @description Missing or invalid bearer token. */
1488
1895
  401: {
1489
1896
  headers: {
1897
+ "X-Request-Id": components["headers"]["RequestId"];
1490
1898
  [name: string]: unknown;
1491
1899
  };
1492
1900
  content: {
@@ -1496,15 +1904,19 @@ interface operations {
1496
1904
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
1497
1905
  403: {
1498
1906
  headers: {
1907
+ "X-Request-Id": components["headers"]["RequestId"];
1499
1908
  [name: string]: unknown;
1500
1909
  };
1501
1910
  content: {
1502
1911
  "application/json": components["schemas"]["ErrorResponseDto"];
1503
1912
  };
1504
1913
  };
1505
- /** @description Already 10 endpoints (`WEBHOOK_ENDPOINT_LIMIT`), or Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
1914
+ /** @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). */
1506
1915
  409: {
1507
1916
  headers: {
1917
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
1918
+ "Retry-After"?: number;
1919
+ "X-Request-Id": components["headers"]["RequestId"];
1508
1920
  [name: string]: unknown;
1509
1921
  };
1510
1922
  content: {
@@ -1514,6 +1926,20 @@ interface operations {
1514
1926
  /** @description The URL points at a private, loopback or internal address. */
1515
1927
  422: {
1516
1928
  headers: {
1929
+ "X-Request-Id": components["headers"]["RequestId"];
1930
+ [name: string]: unknown;
1931
+ };
1932
+ content: {
1933
+ "application/json": components["schemas"]["ErrorResponseDto"];
1934
+ };
1935
+ };
1936
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
1937
+ 429: {
1938
+ headers: {
1939
+ "Retry-After": components["headers"]["Retry-After"];
1940
+ "Retry-After-long": components["headers"]["Retry-After-long"];
1941
+ "Retry-After-short": components["headers"]["Retry-After-short"];
1942
+ "X-Request-Id": components["headers"]["RequestId"];
1517
1943
  [name: string]: unknown;
1518
1944
  };
1519
1945
  content: {
@@ -1527,7 +1953,9 @@ interface operations {
1527
1953
  query?: never;
1528
1954
  header?: never;
1529
1955
  path: {
1956
+ /** @description Id of the workspace. */
1530
1957
  workspace_id: string;
1958
+ /** @description Id of the endpoint. */
1531
1959
  endpoint_id: string;
1532
1960
  };
1533
1961
  cookie?: never;
@@ -1536,6 +1964,13 @@ interface operations {
1536
1964
  responses: {
1537
1965
  200: {
1538
1966
  headers: {
1967
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
1968
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
1969
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
1970
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
1971
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
1972
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
1973
+ "X-Request-Id": components["headers"]["RequestId"];
1539
1974
  [name: string]: unknown;
1540
1975
  };
1541
1976
  content: {
@@ -1545,6 +1980,7 @@ interface operations {
1545
1980
  /** @description `endpoint_id` is not a UUID. */
1546
1981
  400: {
1547
1982
  headers: {
1983
+ "X-Request-Id": components["headers"]["RequestId"];
1548
1984
  [name: string]: unknown;
1549
1985
  };
1550
1986
  content: {
@@ -1554,6 +1990,7 @@ interface operations {
1554
1990
  /** @description Missing or invalid bearer token. */
1555
1991
  401: {
1556
1992
  headers: {
1993
+ "X-Request-Id": components["headers"]["RequestId"];
1557
1994
  [name: string]: unknown;
1558
1995
  };
1559
1996
  content: {
@@ -1563,6 +2000,7 @@ interface operations {
1563
2000
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
1564
2001
  403: {
1565
2002
  headers: {
2003
+ "X-Request-Id": components["headers"]["RequestId"];
1566
2004
  [name: string]: unknown;
1567
2005
  };
1568
2006
  content: {
@@ -1572,6 +2010,20 @@ interface operations {
1572
2010
  /** @description No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
1573
2011
  404: {
1574
2012
  headers: {
2013
+ "X-Request-Id": components["headers"]["RequestId"];
2014
+ [name: string]: unknown;
2015
+ };
2016
+ content: {
2017
+ "application/json": components["schemas"]["ErrorResponseDto"];
2018
+ };
2019
+ };
2020
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2021
+ 429: {
2022
+ headers: {
2023
+ "Retry-After": components["headers"]["Retry-After"];
2024
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2025
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2026
+ "X-Request-Id": components["headers"]["RequestId"];
1575
2027
  [name: string]: unknown;
1576
2028
  };
1577
2029
  content: {
@@ -1585,7 +2037,9 @@ interface operations {
1585
2037
  query?: never;
1586
2038
  header?: never;
1587
2039
  path: {
2040
+ /** @description Id of the workspace. */
1588
2041
  workspace_id: string;
2042
+ /** @description Id of the endpoint. */
1589
2043
  endpoint_id: string;
1590
2044
  };
1591
2045
  cookie?: never;
@@ -1595,6 +2049,13 @@ interface operations {
1595
2049
  /** @description Deleted. */
1596
2050
  204: {
1597
2051
  headers: {
2052
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2053
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2054
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2055
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2056
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2057
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2058
+ "X-Request-Id": components["headers"]["RequestId"];
1598
2059
  [name: string]: unknown;
1599
2060
  };
1600
2061
  content?: never;
@@ -1602,6 +2063,7 @@ interface operations {
1602
2063
  /** @description `endpoint_id` is not a UUID. */
1603
2064
  400: {
1604
2065
  headers: {
2066
+ "X-Request-Id": components["headers"]["RequestId"];
1605
2067
  [name: string]: unknown;
1606
2068
  };
1607
2069
  content: {
@@ -1611,6 +2073,7 @@ interface operations {
1611
2073
  /** @description Missing or invalid bearer token. */
1612
2074
  401: {
1613
2075
  headers: {
2076
+ "X-Request-Id": components["headers"]["RequestId"];
1614
2077
  [name: string]: unknown;
1615
2078
  };
1616
2079
  content: {
@@ -1620,6 +2083,7 @@ interface operations {
1620
2083
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
1621
2084
  403: {
1622
2085
  headers: {
2086
+ "X-Request-Id": components["headers"]["RequestId"];
1623
2087
  [name: string]: unknown;
1624
2088
  };
1625
2089
  content: {
@@ -1629,6 +2093,20 @@ interface operations {
1629
2093
  /** @description No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
1630
2094
  404: {
1631
2095
  headers: {
2096
+ "X-Request-Id": components["headers"]["RequestId"];
2097
+ [name: string]: unknown;
2098
+ };
2099
+ content: {
2100
+ "application/json": components["schemas"]["ErrorResponseDto"];
2101
+ };
2102
+ };
2103
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2104
+ 429: {
2105
+ headers: {
2106
+ "Retry-After": components["headers"]["Retry-After"];
2107
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2108
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2109
+ "X-Request-Id": components["headers"]["RequestId"];
1632
2110
  [name: string]: unknown;
1633
2111
  };
1634
2112
  content: {
@@ -1645,7 +2123,9 @@ interface operations {
1645
2123
  "Idempotency-Key"?: string;
1646
2124
  };
1647
2125
  path: {
2126
+ /** @description Id of the workspace. */
1648
2127
  workspace_id: string;
2128
+ /** @description Id of the endpoint. */
1649
2129
  endpoint_id: string;
1650
2130
  };
1651
2131
  cookie?: never;
@@ -1658,6 +2138,15 @@ interface operations {
1658
2138
  responses: {
1659
2139
  200: {
1660
2140
  headers: {
2141
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
2142
+ "Idempotent-Replay"?: "true";
2143
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2144
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2145
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2146
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2147
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2148
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2149
+ "X-Request-Id": components["headers"]["RequestId"];
1661
2150
  [name: string]: unknown;
1662
2151
  };
1663
2152
  content: {
@@ -1667,6 +2156,7 @@ interface operations {
1667
2156
  /** @description Validation failure, or `endpoint_id` is not a UUID. */
1668
2157
  400: {
1669
2158
  headers: {
2159
+ "X-Request-Id": components["headers"]["RequestId"];
1670
2160
  [name: string]: unknown;
1671
2161
  };
1672
2162
  content: {
@@ -1676,6 +2166,7 @@ interface operations {
1676
2166
  /** @description Missing or invalid bearer token. */
1677
2167
  401: {
1678
2168
  headers: {
2169
+ "X-Request-Id": components["headers"]["RequestId"];
1679
2170
  [name: string]: unknown;
1680
2171
  };
1681
2172
  content: {
@@ -1685,6 +2176,7 @@ interface operations {
1685
2176
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
1686
2177
  403: {
1687
2178
  headers: {
2179
+ "X-Request-Id": components["headers"]["RequestId"];
1688
2180
  [name: string]: unknown;
1689
2181
  };
1690
2182
  content: {
@@ -1694,15 +2186,19 @@ interface operations {
1694
2186
  /** @description No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
1695
2187
  404: {
1696
2188
  headers: {
2189
+ "X-Request-Id": components["headers"]["RequestId"];
1697
2190
  [name: string]: unknown;
1698
2191
  };
1699
2192
  content: {
1700
2193
  "application/json": components["schemas"]["ErrorResponseDto"];
1701
2194
  };
1702
2195
  };
1703
- /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
2196
+ /** @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). */
1704
2197
  409: {
1705
2198
  headers: {
2199
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
2200
+ "Retry-After"?: number;
2201
+ "X-Request-Id": components["headers"]["RequestId"];
1706
2202
  [name: string]: unknown;
1707
2203
  };
1708
2204
  content: {
@@ -1712,6 +2208,20 @@ interface operations {
1712
2208
  /** @description The new URL points at a private, loopback or internal address. */
1713
2209
  422: {
1714
2210
  headers: {
2211
+ "X-Request-Id": components["headers"]["RequestId"];
2212
+ [name: string]: unknown;
2213
+ };
2214
+ content: {
2215
+ "application/json": components["schemas"]["ErrorResponseDto"];
2216
+ };
2217
+ };
2218
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2219
+ 429: {
2220
+ headers: {
2221
+ "Retry-After": components["headers"]["Retry-After"];
2222
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2223
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2224
+ "X-Request-Id": components["headers"]["RequestId"];
1715
2225
  [name: string]: unknown;
1716
2226
  };
1717
2227
  content: {
@@ -1728,7 +2238,9 @@ interface operations {
1728
2238
  "Idempotency-Key"?: string;
1729
2239
  };
1730
2240
  path: {
2241
+ /** @description Id of the workspace. */
1731
2242
  workspace_id: string;
2243
+ /** @description Id of the endpoint. */
1732
2244
  endpoint_id: string;
1733
2245
  };
1734
2246
  cookie?: never;
@@ -1741,6 +2253,15 @@ interface operations {
1741
2253
  responses: {
1742
2254
  200: {
1743
2255
  headers: {
2256
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
2257
+ "Idempotent-Replay"?: "true";
2258
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2259
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2260
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2261
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2262
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2263
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2264
+ "X-Request-Id": components["headers"]["RequestId"];
1744
2265
  [name: string]: unknown;
1745
2266
  };
1746
2267
  content: {
@@ -1750,6 +2271,7 @@ interface operations {
1750
2271
  /** @description `grace_hours` out of range, or `endpoint_id` is not a UUID. */
1751
2272
  400: {
1752
2273
  headers: {
2274
+ "X-Request-Id": components["headers"]["RequestId"];
1753
2275
  [name: string]: unknown;
1754
2276
  };
1755
2277
  content: {
@@ -1759,6 +2281,7 @@ interface operations {
1759
2281
  /** @description Missing or invalid bearer token. */
1760
2282
  401: {
1761
2283
  headers: {
2284
+ "X-Request-Id": components["headers"]["RequestId"];
1762
2285
  [name: string]: unknown;
1763
2286
  };
1764
2287
  content: {
@@ -1768,6 +2291,7 @@ interface operations {
1768
2291
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
1769
2292
  403: {
1770
2293
  headers: {
2294
+ "X-Request-Id": components["headers"]["RequestId"];
1771
2295
  [name: string]: unknown;
1772
2296
  };
1773
2297
  content: {
@@ -1777,15 +2301,32 @@ interface operations {
1777
2301
  /** @description No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
1778
2302
  404: {
1779
2303
  headers: {
2304
+ "X-Request-Id": components["headers"]["RequestId"];
1780
2305
  [name: string]: unknown;
1781
2306
  };
1782
2307
  content: {
1783
2308
  "application/json": components["schemas"]["ErrorResponseDto"];
1784
2309
  };
1785
2310
  };
1786
- /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
2311
+ /** @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). */
1787
2312
  409: {
1788
2313
  headers: {
2314
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
2315
+ "Retry-After"?: number;
2316
+ "X-Request-Id": components["headers"]["RequestId"];
2317
+ [name: string]: unknown;
2318
+ };
2319
+ content: {
2320
+ "application/json": components["schemas"]["ErrorResponseDto"];
2321
+ };
2322
+ };
2323
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2324
+ 429: {
2325
+ headers: {
2326
+ "Retry-After": components["headers"]["Retry-After"];
2327
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2328
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2329
+ "X-Request-Id": components["headers"]["RequestId"];
1789
2330
  [name: string]: unknown;
1790
2331
  };
1791
2332
  content: {
@@ -1802,7 +2343,9 @@ interface operations {
1802
2343
  "Idempotency-Key"?: string;
1803
2344
  };
1804
2345
  path: {
2346
+ /** @description Id of the workspace. */
1805
2347
  workspace_id: string;
2348
+ /** @description Id of the endpoint. */
1806
2349
  endpoint_id: string;
1807
2350
  };
1808
2351
  cookie?: never;
@@ -1816,6 +2359,15 @@ interface operations {
1816
2359
  /** @description The attempt, successful or not. */
1817
2360
  200: {
1818
2361
  headers: {
2362
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
2363
+ "Idempotent-Replay"?: "true";
2364
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2365
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2366
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2367
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2368
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2369
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2370
+ "X-Request-Id": components["headers"]["RequestId"];
1819
2371
  [name: string]: unknown;
1820
2372
  };
1821
2373
  content: {
@@ -1825,6 +2377,7 @@ interface operations {
1825
2377
  /** @description Unknown `event_type`, or `endpoint_id` is not a UUID. */
1826
2378
  400: {
1827
2379
  headers: {
2380
+ "X-Request-Id": components["headers"]["RequestId"];
1828
2381
  [name: string]: unknown;
1829
2382
  };
1830
2383
  content: {
@@ -1834,6 +2387,7 @@ interface operations {
1834
2387
  /** @description Missing or invalid bearer token. */
1835
2388
  401: {
1836
2389
  headers: {
2390
+ "X-Request-Id": components["headers"]["RequestId"];
1837
2391
  [name: string]: unknown;
1838
2392
  };
1839
2393
  content: {
@@ -1843,6 +2397,7 @@ interface operations {
1843
2397
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
1844
2398
  403: {
1845
2399
  headers: {
2400
+ "X-Request-Id": components["headers"]["RequestId"];
1846
2401
  [name: string]: unknown;
1847
2402
  };
1848
2403
  content: {
@@ -1852,15 +2407,32 @@ interface operations {
1852
2407
  /** @description No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
1853
2408
  404: {
1854
2409
  headers: {
2410
+ "X-Request-Id": components["headers"]["RequestId"];
1855
2411
  [name: string]: unknown;
1856
2412
  };
1857
2413
  content: {
1858
2414
  "application/json": components["schemas"]["ErrorResponseDto"];
1859
2415
  };
1860
2416
  };
1861
- /** @description Idempotency-Key reused with a different body (`IDEMPOTENCY_KEY_REUSE`). */
2417
+ /** @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). */
1862
2418
  409: {
1863
2419
  headers: {
2420
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
2421
+ "Retry-After"?: number;
2422
+ "X-Request-Id": components["headers"]["RequestId"];
2423
+ [name: string]: unknown;
2424
+ };
2425
+ content: {
2426
+ "application/json": components["schemas"]["ErrorResponseDto"];
2427
+ };
2428
+ };
2429
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2430
+ 429: {
2431
+ headers: {
2432
+ "Retry-After": components["headers"]["Retry-After"];
2433
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2434
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2435
+ "X-Request-Id": components["headers"]["RequestId"];
1864
2436
  [name: string]: unknown;
1865
2437
  };
1866
2438
  content: {
@@ -1874,6 +2446,7 @@ interface operations {
1874
2446
  query?: never;
1875
2447
  header?: never;
1876
2448
  path: {
2449
+ /** @description Id of the workspace. */
1877
2450
  workspace_id: string;
1878
2451
  };
1879
2452
  cookie?: never;
@@ -1882,6 +2455,13 @@ interface operations {
1882
2455
  responses: {
1883
2456
  200: {
1884
2457
  headers: {
2458
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2459
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2460
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2461
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2462
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2463
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2464
+ "X-Request-Id": components["headers"]["RequestId"];
1885
2465
  [name: string]: unknown;
1886
2466
  };
1887
2467
  content: {
@@ -1891,6 +2471,7 @@ interface operations {
1891
2471
  /** @description Missing or invalid bearer token. */
1892
2472
  401: {
1893
2473
  headers: {
2474
+ "X-Request-Id": components["headers"]["RequestId"];
1894
2475
  [name: string]: unknown;
1895
2476
  };
1896
2477
  content: {
@@ -1900,6 +2481,20 @@ interface operations {
1900
2481
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
1901
2482
  403: {
1902
2483
  headers: {
2484
+ "X-Request-Id": components["headers"]["RequestId"];
2485
+ [name: string]: unknown;
2486
+ };
2487
+ content: {
2488
+ "application/json": components["schemas"]["ErrorResponseDto"];
2489
+ };
2490
+ };
2491
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2492
+ 429: {
2493
+ headers: {
2494
+ "Retry-After": components["headers"]["Retry-After"];
2495
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2496
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2497
+ "X-Request-Id": components["headers"]["RequestId"];
1903
2498
  [name: string]: unknown;
1904
2499
  };
1905
2500
  content: {
@@ -1915,17 +2510,20 @@ interface operations {
1915
2510
  type?: ("job.succeeded" | "job.failed" | "credits.low")[];
1916
2511
  /** @description Only events sent (or queued) to this endpoint. */
1917
2512
  endpoint_id?: string;
1918
- status?: "pending" | "delivered" | "failed" | "not_sent";
2513
+ /** @description Only events in this delivery status. */
2514
+ status?: components["schemas"]["WebhookEventStatus"];
1919
2515
  /** @description Only events created at or after this instant. */
1920
2516
  created_after?: string;
1921
2517
  /** @description Only events created before this instant. */
1922
2518
  created_before?: string;
2519
+ /** @description Page size. */
1923
2520
  limit?: number;
1924
2521
  /** @description The previous page's `pagination.next_cursor`. */
1925
2522
  cursor?: string;
1926
2523
  };
1927
2524
  header?: never;
1928
2525
  path: {
2526
+ /** @description Id of the workspace. */
1929
2527
  workspace_id: string;
1930
2528
  };
1931
2529
  cookie?: never;
@@ -1934,6 +2532,13 @@ interface operations {
1934
2532
  responses: {
1935
2533
  200: {
1936
2534
  headers: {
2535
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2536
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2537
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2538
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2539
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2540
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2541
+ "X-Request-Id": components["headers"]["RequestId"];
1937
2542
  [name: string]: unknown;
1938
2543
  };
1939
2544
  content: {
@@ -1943,6 +2548,7 @@ interface operations {
1943
2548
  /** @description Invalid filter value or cursor. */
1944
2549
  400: {
1945
2550
  headers: {
2551
+ "X-Request-Id": components["headers"]["RequestId"];
1946
2552
  [name: string]: unknown;
1947
2553
  };
1948
2554
  content: {
@@ -1952,6 +2558,7 @@ interface operations {
1952
2558
  /** @description Missing or invalid bearer token. */
1953
2559
  401: {
1954
2560
  headers: {
2561
+ "X-Request-Id": components["headers"]["RequestId"];
1955
2562
  [name: string]: unknown;
1956
2563
  };
1957
2564
  content: {
@@ -1961,6 +2568,20 @@ interface operations {
1961
2568
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
1962
2569
  403: {
1963
2570
  headers: {
2571
+ "X-Request-Id": components["headers"]["RequestId"];
2572
+ [name: string]: unknown;
2573
+ };
2574
+ content: {
2575
+ "application/json": components["schemas"]["ErrorResponseDto"];
2576
+ };
2577
+ };
2578
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2579
+ 429: {
2580
+ headers: {
2581
+ "Retry-After": components["headers"]["Retry-After"];
2582
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2583
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2584
+ "X-Request-Id": components["headers"]["RequestId"];
1964
2585
  [name: string]: unknown;
1965
2586
  };
1966
2587
  content: {
@@ -1974,6 +2595,7 @@ interface operations {
1974
2595
  query?: never;
1975
2596
  header?: never;
1976
2597
  path: {
2598
+ /** @description Id of the workspace. */
1977
2599
  workspace_id: string;
1978
2600
  /** @description The event id, `evt_<uuid>`. */
1979
2601
  event_id: string;
@@ -1984,6 +2606,13 @@ interface operations {
1984
2606
  responses: {
1985
2607
  200: {
1986
2608
  headers: {
2609
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2610
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2611
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2612
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2613
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2614
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2615
+ "X-Request-Id": components["headers"]["RequestId"];
1987
2616
  [name: string]: unknown;
1988
2617
  };
1989
2618
  content: {
@@ -1993,6 +2622,7 @@ interface operations {
1993
2622
  /** @description `event_id` is not `evt_<uuid>`. */
1994
2623
  400: {
1995
2624
  headers: {
2625
+ "X-Request-Id": components["headers"]["RequestId"];
1996
2626
  [name: string]: unknown;
1997
2627
  };
1998
2628
  content: {
@@ -2002,6 +2632,7 @@ interface operations {
2002
2632
  /** @description Missing or invalid bearer token. */
2003
2633
  401: {
2004
2634
  headers: {
2635
+ "X-Request-Id": components["headers"]["RequestId"];
2005
2636
  [name: string]: unknown;
2006
2637
  };
2007
2638
  content: {
@@ -2011,6 +2642,7 @@ interface operations {
2011
2642
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
2012
2643
  403: {
2013
2644
  headers: {
2645
+ "X-Request-Id": components["headers"]["RequestId"];
2014
2646
  [name: string]: unknown;
2015
2647
  };
2016
2648
  content: {
@@ -2020,6 +2652,20 @@ interface operations {
2020
2652
  /** @description No such event here (`WEBHOOK_EVENT_NOT_FOUND`); events are kept for 30 days. */
2021
2653
  404: {
2022
2654
  headers: {
2655
+ "X-Request-Id": components["headers"]["RequestId"];
2656
+ [name: string]: unknown;
2657
+ };
2658
+ content: {
2659
+ "application/json": components["schemas"]["ErrorResponseDto"];
2660
+ };
2661
+ };
2662
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2663
+ 429: {
2664
+ headers: {
2665
+ "Retry-After": components["headers"]["Retry-After"];
2666
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2667
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2668
+ "X-Request-Id": components["headers"]["RequestId"];
2023
2669
  [name: string]: unknown;
2024
2670
  };
2025
2671
  content: {
@@ -2039,6 +2685,7 @@ interface operations {
2039
2685
  "Idempotency-Key"?: string;
2040
2686
  };
2041
2687
  path: {
2688
+ /** @description Id of the workspace. */
2042
2689
  workspace_id: string;
2043
2690
  /** @description The event id, `evt_<uuid>`. */
2044
2691
  event_id: string;
@@ -2049,6 +2696,15 @@ interface operations {
2049
2696
  responses: {
2050
2697
  200: {
2051
2698
  headers: {
2699
+ /** @description `true` when this response is a replay of an earlier request with the same `Idempotency-Key`. */
2700
+ "Idempotent-Replay"?: "true";
2701
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2702
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2703
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2704
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2705
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2706
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2707
+ "X-Request-Id": components["headers"]["RequestId"];
2052
2708
  [name: string]: unknown;
2053
2709
  };
2054
2710
  content: {
@@ -2058,6 +2714,7 @@ interface operations {
2058
2714
  /** @description `event_id` is not `evt_<uuid>`, or `endpoint_id` is not a UUID. */
2059
2715
  400: {
2060
2716
  headers: {
2717
+ "X-Request-Id": components["headers"]["RequestId"];
2061
2718
  [name: string]: unknown;
2062
2719
  };
2063
2720
  content: {
@@ -2067,6 +2724,7 @@ interface operations {
2067
2724
  /** @description Missing or invalid bearer token. */
2068
2725
  401: {
2069
2726
  headers: {
2727
+ "X-Request-Id": components["headers"]["RequestId"];
2070
2728
  [name: string]: unknown;
2071
2729
  };
2072
2730
  content: {
@@ -2076,6 +2734,7 @@ interface operations {
2076
2734
  /** @description Caller lacks `trawl.webhook.read` (reads) or `trawl.webhook.manage` (changes, Send test, replay), or Trawl is not enabled for the workspace (`SERVICE_NOT_ENABLED`). */
2077
2735
  403: {
2078
2736
  headers: {
2737
+ "X-Request-Id": components["headers"]["RequestId"];
2079
2738
  [name: string]: unknown;
2080
2739
  };
2081
2740
  content: {
@@ -2085,15 +2744,32 @@ interface operations {
2085
2744
  /** @description No such event here (`WEBHOOK_EVENT_NOT_FOUND`); events are kept for 30 days. Or No such endpoint here (`WEBHOOK_ENDPOINT_NOT_FOUND`). */
2086
2745
  404: {
2087
2746
  headers: {
2747
+ "X-Request-Id": components["headers"]["RequestId"];
2088
2748
  [name: string]: unknown;
2089
2749
  };
2090
2750
  content: {
2091
2751
  "application/json": components["schemas"]["ErrorResponseDto"];
2092
2752
  };
2093
2753
  };
2094
- /** @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`). */
2754
+ /** @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). */
2095
2755
  409: {
2096
2756
  headers: {
2757
+ /** @description Seconds to wait before retrying with the same key (sent with `IDEMPOTENCY_IN_PROGRESS`). */
2758
+ "Retry-After"?: number;
2759
+ "X-Request-Id": components["headers"]["RequestId"];
2760
+ [name: string]: unknown;
2761
+ };
2762
+ content: {
2763
+ "application/json": components["schemas"]["ErrorResponseDto"];
2764
+ };
2765
+ };
2766
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2767
+ 429: {
2768
+ headers: {
2769
+ "Retry-After": components["headers"]["Retry-After"];
2770
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2771
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2772
+ "X-Request-Id": components["headers"]["RequestId"];
2097
2773
  [name: string]: unknown;
2098
2774
  };
2099
2775
  content: {
@@ -2107,7 +2783,9 @@ interface operations {
2107
2783
  query?: never;
2108
2784
  header?: never;
2109
2785
  path: {
2786
+ /** @description Id of the workspace. */
2110
2787
  workspace_id: string;
2788
+ /** @description Id of the webhook. */
2111
2789
  id: string;
2112
2790
  };
2113
2791
  cookie?: never;
@@ -2117,6 +2795,13 @@ interface operations {
2117
2795
  /** @description Webhook. */
2118
2796
  200: {
2119
2797
  headers: {
2798
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2799
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2800
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2801
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2802
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2803
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2804
+ "X-Request-Id": components["headers"]["RequestId"];
2120
2805
  [name: string]: unknown;
2121
2806
  };
2122
2807
  content: {
@@ -2126,6 +2811,7 @@ interface operations {
2126
2811
  /** @description `id` is not a UUID. */
2127
2812
  400: {
2128
2813
  headers: {
2814
+ "X-Request-Id": components["headers"]["RequestId"];
2129
2815
  [name: string]: unknown;
2130
2816
  };
2131
2817
  content: {
@@ -2135,6 +2821,20 @@ interface operations {
2135
2821
  /** @description Webhook not found. */
2136
2822
  404: {
2137
2823
  headers: {
2824
+ "X-Request-Id": components["headers"]["RequestId"];
2825
+ [name: string]: unknown;
2826
+ };
2827
+ content: {
2828
+ "application/json": components["schemas"]["ErrorResponseDto"];
2829
+ };
2830
+ };
2831
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2832
+ 429: {
2833
+ headers: {
2834
+ "Retry-After": components["headers"]["Retry-After"];
2835
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2836
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2837
+ "X-Request-Id": components["headers"]["RequestId"];
2138
2838
  [name: string]: unknown;
2139
2839
  };
2140
2840
  content: {
@@ -2148,7 +2848,9 @@ interface operations {
2148
2848
  query?: never;
2149
2849
  header?: never;
2150
2850
  path: {
2851
+ /** @description Id of the workspace. */
2151
2852
  workspace_id: string;
2853
+ /** @description Id of the webhook. */
2152
2854
  id: string;
2153
2855
  };
2154
2856
  cookie?: never;
@@ -2158,6 +2860,13 @@ interface operations {
2158
2860
  /** @description Deleted. */
2159
2861
  204: {
2160
2862
  headers: {
2863
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2864
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2865
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2866
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2867
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2868
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2869
+ "X-Request-Id": components["headers"]["RequestId"];
2161
2870
  [name: string]: unknown;
2162
2871
  };
2163
2872
  content?: never;
@@ -2165,6 +2874,20 @@ interface operations {
2165
2874
  /** @description Webhook not found. */
2166
2875
  404: {
2167
2876
  headers: {
2877
+ "X-Request-Id": components["headers"]["RequestId"];
2878
+ [name: string]: unknown;
2879
+ };
2880
+ content: {
2881
+ "application/json": components["schemas"]["ErrorResponseDto"];
2882
+ };
2883
+ };
2884
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2885
+ 429: {
2886
+ headers: {
2887
+ "Retry-After": components["headers"]["Retry-After"];
2888
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2889
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2890
+ "X-Request-Id": components["headers"]["RequestId"];
2168
2891
  [name: string]: unknown;
2169
2892
  };
2170
2893
  content: {
@@ -2178,7 +2901,9 @@ interface operations {
2178
2901
  query?: never;
2179
2902
  header?: never;
2180
2903
  path: {
2904
+ /** @description Id of the workspace. */
2181
2905
  workspace_id: string;
2906
+ /** @description Id of the webhook. */
2182
2907
  id: string;
2183
2908
  };
2184
2909
  cookie?: never;
@@ -2192,6 +2917,13 @@ interface operations {
2192
2917
  /** @description Updated webhook (secret masked). */
2193
2918
  200: {
2194
2919
  headers: {
2920
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2921
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2922
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2923
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2924
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2925
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2926
+ "X-Request-Id": components["headers"]["RequestId"];
2195
2927
  [name: string]: unknown;
2196
2928
  };
2197
2929
  content: {
@@ -2201,6 +2933,7 @@ interface operations {
2201
2933
  /** @description Invalid URL. */
2202
2934
  400: {
2203
2935
  headers: {
2936
+ "X-Request-Id": components["headers"]["RequestId"];
2204
2937
  [name: string]: unknown;
2205
2938
  };
2206
2939
  content: {
@@ -2210,6 +2943,20 @@ interface operations {
2210
2943
  /** @description Webhook not found. */
2211
2944
  404: {
2212
2945
  headers: {
2946
+ "X-Request-Id": components["headers"]["RequestId"];
2947
+ [name: string]: unknown;
2948
+ };
2949
+ content: {
2950
+ "application/json": components["schemas"]["ErrorResponseDto"];
2951
+ };
2952
+ };
2953
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
2954
+ 429: {
2955
+ headers: {
2956
+ "Retry-After": components["headers"]["Retry-After"];
2957
+ "Retry-After-long": components["headers"]["Retry-After-long"];
2958
+ "Retry-After-short": components["headers"]["Retry-After-short"];
2959
+ "X-Request-Id": components["headers"]["RequestId"];
2213
2960
  [name: string]: unknown;
2214
2961
  };
2215
2962
  content: {
@@ -2230,7 +2977,9 @@ interface operations {
2230
2977
  };
2231
2978
  header?: never;
2232
2979
  path: {
2980
+ /** @description Id of the workspace. */
2233
2981
  workspace_id: string;
2982
+ /** @description Id of the webhook. */
2234
2983
  id: string;
2235
2984
  };
2236
2985
  cookie?: never;
@@ -2240,6 +2989,13 @@ interface operations {
2240
2989
  /** @description Page of delivery attempts with a pagination cursor. */
2241
2990
  200: {
2242
2991
  headers: {
2992
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
2993
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
2994
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
2995
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
2996
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
2997
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
2998
+ "X-Request-Id": components["headers"]["RequestId"];
2243
2999
  [name: string]: unknown;
2244
3000
  };
2245
3001
  content: {
@@ -2249,6 +3005,7 @@ interface operations {
2249
3005
  /** @description Invalid cursor, limit or `status` filter. */
2250
3006
  400: {
2251
3007
  headers: {
3008
+ "X-Request-Id": components["headers"]["RequestId"];
2252
3009
  [name: string]: unknown;
2253
3010
  };
2254
3011
  content: {
@@ -2258,6 +3015,20 @@ interface operations {
2258
3015
  /** @description Webhook not found in this workspace. */
2259
3016
  404: {
2260
3017
  headers: {
3018
+ "X-Request-Id": components["headers"]["RequestId"];
3019
+ [name: string]: unknown;
3020
+ };
3021
+ content: {
3022
+ "application/json": components["schemas"]["ErrorResponseDto"];
3023
+ };
3024
+ };
3025
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
3026
+ 429: {
3027
+ headers: {
3028
+ "Retry-After": components["headers"]["Retry-After"];
3029
+ "Retry-After-long": components["headers"]["Retry-After-long"];
3030
+ "Retry-After-short": components["headers"]["Retry-After-short"];
3031
+ "X-Request-Id": components["headers"]["RequestId"];
2261
3032
  [name: string]: unknown;
2262
3033
  };
2263
3034
  content: {
@@ -2271,7 +3042,9 @@ interface operations {
2271
3042
  query?: never;
2272
3043
  header?: never;
2273
3044
  path: {
3045
+ /** @description Id of the workspace. */
2274
3046
  workspace_id: string;
3047
+ /** @description Id of the webhook. */
2275
3048
  id: string;
2276
3049
  };
2277
3050
  cookie?: never;
@@ -2281,6 +3054,13 @@ interface operations {
2281
3054
  /** @description Secret rotated. Includes the new plaintext secret exactly once. */
2282
3055
  201: {
2283
3056
  headers: {
3057
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
3058
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
3059
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
3060
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
3061
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
3062
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
3063
+ "X-Request-Id": components["headers"]["RequestId"];
2284
3064
  [name: string]: unknown;
2285
3065
  };
2286
3066
  content: {
@@ -2290,6 +3070,20 @@ interface operations {
2290
3070
  /** @description Webhook not found. */
2291
3071
  404: {
2292
3072
  headers: {
3073
+ "X-Request-Id": components["headers"]["RequestId"];
3074
+ [name: string]: unknown;
3075
+ };
3076
+ content: {
3077
+ "application/json": components["schemas"]["ErrorResponseDto"];
3078
+ };
3079
+ };
3080
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
3081
+ 429: {
3082
+ headers: {
3083
+ "Retry-After": components["headers"]["Retry-After"];
3084
+ "Retry-After-long": components["headers"]["Retry-After-long"];
3085
+ "Retry-After-short": components["headers"]["Retry-After-short"];
3086
+ "X-Request-Id": components["headers"]["RequestId"];
2293
3087
  [name: string]: unknown;
2294
3088
  };
2295
3089
  content: {
@@ -2303,7 +3097,9 @@ interface operations {
2303
3097
  query?: never;
2304
3098
  header?: never;
2305
3099
  path: {
3100
+ /** @description Id of the workspace. */
2306
3101
  workspace_id: string;
3102
+ /** @description Id of the webhook. */
2307
3103
  id: string;
2308
3104
  };
2309
3105
  cookie?: never;
@@ -2313,6 +3109,13 @@ interface operations {
2313
3109
  /** @description Sent. Read the outcome from `/deliveries`. */
2314
3110
  202: {
2315
3111
  headers: {
3112
+ "X-RateLimit-Limit-long": components["headers"]["X-RateLimit-Limit-long"];
3113
+ "X-RateLimit-Limit-short": components["headers"]["X-RateLimit-Limit-short"];
3114
+ "X-RateLimit-Remaining-long": components["headers"]["X-RateLimit-Remaining-long"];
3115
+ "X-RateLimit-Remaining-short": components["headers"]["X-RateLimit-Remaining-short"];
3116
+ "X-RateLimit-Reset-long": components["headers"]["X-RateLimit-Reset-long"];
3117
+ "X-RateLimit-Reset-short": components["headers"]["X-RateLimit-Reset-short"];
3118
+ "X-Request-Id": components["headers"]["RequestId"];
2316
3119
  [name: string]: unknown;
2317
3120
  };
2318
3121
  content: {
@@ -2322,6 +3125,7 @@ interface operations {
2322
3125
  /** @description Webhook not found. */
2323
3126
  404: {
2324
3127
  headers: {
3128
+ "X-Request-Id": components["headers"]["RequestId"];
2325
3129
  [name: string]: unknown;
2326
3130
  };
2327
3131
  content: {
@@ -2331,6 +3135,20 @@ interface operations {
2331
3135
  /** @description The webhook is switched off. */
2332
3136
  422: {
2333
3137
  headers: {
3138
+ "X-Request-Id": components["headers"]["RequestId"];
3139
+ [name: string]: unknown;
3140
+ };
3141
+ content: {
3142
+ "application/json": components["schemas"]["ErrorResponseDto"];
3143
+ };
3144
+ };
3145
+ /** @description More than 20 requests per second or 600 per minute from this client IP (`RATE_LIMITED`); wait `Retry-After` seconds. */
3146
+ 429: {
3147
+ headers: {
3148
+ "Retry-After": components["headers"]["Retry-After"];
3149
+ "Retry-After-long": components["headers"]["Retry-After-long"];
3150
+ "Retry-After-short": components["headers"]["Retry-After-short"];
3151
+ "X-Request-Id": components["headers"]["RequestId"];
2334
3152
  [name: string]: unknown;
2335
3153
  };
2336
3154
  content: {