@caido/schema-proxy 0.56.0 → 0.56.1

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/openapi.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  openapi: 3.1.0
2
2
  info:
3
3
  title: Caido Proxy API
4
- version: 0.55.2
4
+ version: ''
5
5
  paths:
6
6
  /ai/completion:
7
7
  post:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@caido/schema-proxy",
3
- "version": "0.56.0",
3
+ "version": "0.56.1",
4
4
  "description": "Caido Proxy API schemas (GraphQL and OpenAPI)",
5
5
  "author": "Caido Labs Inc. <dev@caido.io>",
6
6
  "repository": "https://github.com/caido/schemas/",
package/schema.graphql CHANGED
@@ -251,9 +251,15 @@ type AutomateEntryEdge {
251
251
  node: AutomateEntry!
252
252
  }
253
253
 
254
+ type AutomateEntryExtract {
255
+ name: String!
256
+ raw: Blob!
257
+ }
258
+
254
259
  type AutomateEntryRequest {
255
260
  automateEntryId: ID!
256
261
  error: String
262
+ extracts: [AutomateEntryExtract!]!
257
263
  payloads: [AutomateEntryRequestPayload!]!
258
264
  request: Request!
259
265
  sequenceId: ID!
@@ -291,6 +297,11 @@ type AutomateEntryRequestEdge {
291
297
  }
292
298
 
293
299
  enum AutomateEntryRequestOrderBy {
300
+ EXTRACT_0
301
+ EXTRACT_1
302
+ EXTRACT_2
303
+ EXTRACT_3
304
+ EXTRACT_4
294
305
  ID
295
306
  PAYLOAD_0
296
307
  PAYLOAD_1
@@ -298,6 +309,7 @@ enum AutomateEntryRequestOrderBy {
298
309
  PAYLOAD_3
299
310
  PAYLOAD_4
300
311
  POSITION
312
+ REQ_CREATED_AT
301
313
  RESP_LENGTH
302
314
  RESP_ROUNDTRIP_TIME
303
315
  RESP_STATUS_CODE
@@ -313,6 +325,24 @@ type AutomateEntryRequestPayload {
313
325
  raw: Blob
314
326
  }
315
327
 
328
+ union AutomateExtractor = AutomateExtractorRegex
329
+
330
+ input AutomateExtractorInput @oneOf {
331
+ automateExtractorRegex: AutomateExtractorRegexInput
332
+ }
333
+
334
+ type AutomateExtractorRegex {
335
+ body: Boolean!
336
+ regex: String!
337
+ workflowId: ID
338
+ }
339
+
340
+ input AutomateExtractorRegexInput {
341
+ body: Boolean!
342
+ regex: String!
343
+ workflowId: ID
344
+ }
345
+
316
346
  type AutomateHostedFilePayload {
317
347
  delimiter: String
318
348
  id: ID!
@@ -476,6 +506,7 @@ type AutomateSessionEdge {
476
506
  type AutomateSettings {
477
507
  closeConnection: Boolean!
478
508
  concurrency: AutomateConcurrencySetting!
509
+ extractors: [AutomateExtractor!]!
479
510
  payloads: [AutomatePayload!]!
480
511
  placeholders: [AutomatePlaceholder!]!
481
512
  redirect: AutomateRedirectSetting!
@@ -487,6 +518,7 @@ type AutomateSettings {
487
518
  input AutomateSettingsInput {
488
519
  closeConnection: Boolean!
489
520
  concurrency: AutomateConcurrencySettingInput!
521
+ extractors: [AutomateExtractorInput!]!
490
522
  payloads: [AutomatePayloadInput!]!
491
523
  placeholders: [AutomatePlaceholderInput!]!
492
524
  redirect: AutomateRedirectSettingInput!
@@ -687,6 +719,10 @@ type CertificateUserError implements UserError {
687
719
  reason: CertificateErrorReason!
688
720
  }
689
721
 
722
+ type ClearReplayEntryDraftPayload {
723
+ entry: ReplayEntry
724
+ }
725
+
690
726
  type ClearSitemapEntriesPayload {
691
727
  deletedIds: [ID!]!
692
728
  }
@@ -807,6 +843,7 @@ union CreateFilterPresetError =
807
843
  input CreateFilterPresetInput {
808
844
  alias: Alias!
809
845
  clause: QueryInput!
846
+ global: Boolean!
810
847
  name: String!
811
848
  }
812
849
 
@@ -855,13 +892,44 @@ type CreateReplaySessionCollectionPayload {
855
892
 
856
893
  input CreateReplaySessionInput {
857
894
  collectionId: ID
895
+ kind: ReplaySessionKind!
858
896
  requestSource: RequestSourceInput
897
+ settings: ReplaySessionSettingsInput
859
898
  }
860
899
 
861
900
  type CreateReplaySessionPayload {
862
901
  session: ReplaySession
863
902
  }
864
903
 
904
+ input CreateRequestInput {
905
+ alteration: Alteration!
906
+ host: String!
907
+ isTls: Boolean!
908
+ method: String!
909
+ parentId: ID
910
+ path: String!
911
+ port: Int!
912
+ query: String!
913
+ raw: Blob!
914
+ response: CreateResponseInput
915
+ sni: String
916
+ source: Source!
917
+ }
918
+
919
+ type CreateRequestPayload {
920
+ id: ID!
921
+ responseId: ID
922
+ }
923
+
924
+ input CreateResponseInput {
925
+ alteration: Alteration!
926
+ parentId: ID
927
+ raw: Blob!
928
+ roundtripTime: Int!
929
+ source: Source!
930
+ statusCode: Int!
931
+ }
932
+
865
933
  union CreateScopeError = InvalidGlobTermsUserError | OtherUserError
866
934
 
867
935
  input CreateScopeInput {
@@ -1191,6 +1259,11 @@ type DataExportOnDemand implements DataExport {
1191
1259
  id: ID!
1192
1260
  }
1193
1261
 
1262
+ input DataExportSettingsInput {
1263
+ format: DataExportFormat!
1264
+ includeRaw: Boolean!
1265
+ }
1266
+
1194
1267
  enum DataExportStatus {
1195
1268
  CANCELLED
1196
1269
  DONE
@@ -1564,6 +1637,22 @@ type ExportFindingsPayload {
1564
1637
  export: DataExportOnDemand
1565
1638
  }
1566
1639
 
1640
+ union ExportSitemapEntriesError = PermissionDeniedUserError | OtherUserError
1641
+
1642
+ input ExportSitemapEntriesFilter @oneOf {
1643
+ ids: [ID!]
1644
+ }
1645
+
1646
+ input ExportSitemapEntriesInput {
1647
+ filter: ExportSitemapEntriesFilter!
1648
+ settings: DataExportSettingsInput!
1649
+ }
1650
+
1651
+ type ExportSitemapEntriesPayload {
1652
+ error: ExportSitemapEntriesError
1653
+ export: DataExportOnDemand
1654
+ }
1655
+
1567
1656
  union ExportTamperError = PermissionDeniedUserError | OtherUserError
1568
1657
 
1569
1658
  input ExportTamperInput {
@@ -1582,6 +1671,7 @@ input FilterClauseFindingInput {
1582
1671
  type FilterPreset {
1583
1672
  alias: Alias!
1584
1673
  clause: Query!
1674
+ global: Boolean!
1585
1675
  id: ID!
1586
1676
  name: String!
1587
1677
  }
@@ -1775,6 +1865,10 @@ input HTTPQLInput {
1775
1865
  code: String!
1776
1866
  }
1777
1867
 
1868
+ type HiddenStreamWsMessage {
1869
+ hiddenId: ID!
1870
+ }
1871
+
1778
1872
  input HideFindingsInput @oneOf {
1779
1873
  ids: [ID!]
1780
1874
  reporter: String
@@ -1846,6 +1940,7 @@ type InstallPluginPackagePayload {
1846
1940
  type InstanceSettings {
1847
1941
  aiProviders: AIProviders!
1848
1942
  analytic: AnalyticStatus!
1943
+ network: NetworkState!
1849
1944
  onboarding: OnboardingState!
1850
1945
  }
1851
1946
 
@@ -2035,11 +2130,21 @@ type InvalidHTTPQLUserError implements UserError {
2035
2130
  query: String!
2036
2131
  }
2037
2132
 
2133
+ type InvalidRangeUserError implements UserError {
2134
+ code: String!
2135
+ range: Range!
2136
+ }
2137
+
2038
2138
  type InvalidRegexUserError implements UserError {
2039
2139
  code: String!
2040
2140
  term: String!
2041
2141
  }
2042
2142
 
2143
+ type InvalidStreamQLUserError implements UserError {
2144
+ code: String!
2145
+ query: String!
2146
+ }
2147
+
2043
2148
  """
2044
2149
  A scalar that can represent any JSON value.
2045
2150
  """
@@ -2095,6 +2200,7 @@ type MutationRoot {
2095
2200
  cancelBackupTask(id: ID!): CancelBackupTaskPayload!
2096
2201
  cancelRestoreBackupTask(id: ID!): CancelRestoreBackupTaskPayload!
2097
2202
  cancelTask(id: ID!): CancelTaskPayload!
2203
+ clearReplayEntryDraft(id: ID!, kind: ReplaySessionKind!): ClearReplayEntryDraftPayload!
2098
2204
  clearSitemapEntries: ClearSitemapEntriesPayload!
2099
2205
  createAssistantSession(input: CreateAssistantSessionInput!): CreateAssistantSessionPayload! @cloud
2100
2206
  createAutomateSession(input: CreateAutomateSessionInput!): CreateAutomateSessionPayload!
@@ -2109,6 +2215,7 @@ type MutationRoot {
2109
2215
  createReplaySessionCollection(
2110
2216
  input: CreateReplaySessionCollectionInput!
2111
2217
  ): CreateReplaySessionCollectionPayload!
2218
+ createRequest(input: CreateRequestInput!): CreateRequestPayload!
2112
2219
  createScope(input: CreateScopeInput!): CreateScopePayload!
2113
2220
  createSitemapEntries(requestId: ID!): CreateSitemapEntriesPayload!
2114
2221
  createTamperRule(input: CreateTamperRuleInput!): CreateTamperRulePayload!
@@ -2147,6 +2254,7 @@ type MutationRoot {
2147
2254
  dropInterceptMessage(id: ID!): DropInterceptMessagePayload!
2148
2255
  duplicateAutomateSession(id: ID!): DuplicateAutomateSessionPayload!
2149
2256
  exportFindings(input: ExportFindingsInput!): ExportFindingsPayload!
2257
+ exportSitemapEntries(input: ExportSitemapEntriesInput!): ExportSitemapEntriesPayload! @cloud
2150
2258
  exportTamper(input: ExportTamperInput!): ExportTamperPayload! @cloud
2151
2259
  forwardInterceptMessage(
2152
2260
  id: ID!
@@ -2197,6 +2305,11 @@ type MutationRoot {
2197
2305
  selectEnvironment(id: ID): SelectEnvironmentPayload!
2198
2306
  selectProject(id: ID!): SelectProjectPayload! @cloud
2199
2307
  sendAssistantMessage(sessionId: ID!, message: String): SendAssistantMessagePayload! @cloud
2308
+ sendReplayTaskMessage(
2309
+ task: ID!
2310
+ input: SendReplayTaskMessageInput!
2311
+ ): SendReplayTaskMessagePayload!
2312
+ sendReplayTaskMessageDraft(task: ID!): SendReplayTaskMessagePayload!
2200
2313
  setActiveReplaySessionEntry(id: ID!, entryId: ID!): SetActiveReplaySessionEntryPayload!
2201
2314
  @deprecated(reason: "Remove usage, no replacement")
2202
2315
  setGlobalConfigPort(input: Int!): SetConfigPortPayload!
@@ -2212,8 +2325,10 @@ type MutationRoot {
2212
2325
  ): StartDeleteStreamWsMessageTaskPayload!
2213
2326
  startExportRequestsTask(input: StartExportRequestsTaskInput!): StartExportRequestsTaskPayload!
2214
2327
  @cloud
2215
- startReplayTask(sessionId: ID!, input: StartReplayTaskInput!): StartReplayTaskPayload! @cloud
2328
+ startReplayTask(sessionId: ID!): StartReplayTaskPayload! @cloud
2329
+ stopReplayWsTasks(taskIds: [ID!]!): StopReplayWsTaskPayload!
2216
2330
  testAiProvider(input: TestAIProviderInput!): TestAIProviderPayload! @cloud
2331
+ testExtractor(input: TestExtractorInput!): TestExtractorPayload!
2217
2332
  testTamperRule(input: TestTamperRuleInput!): TestTamperRulePayload!
2218
2333
  testUpstreamProxyHttp(input: TestUpstreamProxyHttpInput!): TestUpstreamProxyHttpPayload!
2219
2334
  testUpstreamProxySocks(input: TestUpstreamProxySocksInput!): TestUpstreamProxySocksPayload!
@@ -2237,6 +2352,14 @@ type MutationRoot {
2237
2352
  updateEnvironment(id: ID!, input: UpdateEnvironmentInput!): UpdateEnvironmentPayload! @cloud
2238
2353
  updateFilterPreset(id: ID!, input: UpdateFilterPresetInput!): UpdateFilterPresetPayload!
2239
2354
  updateFinding(id: ID!, input: UpdateFindingInput!): UpdateFindingPayload!
2355
+ updateReplayEntryDraft(
2356
+ id: ID!
2357
+ input: UpdateReplayEntryDraftInput!
2358
+ ): UpdateReplayEntryDraftPayload!
2359
+ updateReplaySessionSettings(
2360
+ id: ID!
2361
+ input: ReplaySessionSettingsInput!
2362
+ ): UpdateReplaySessionSettingsPayload!
2240
2363
  updateRequestMetadata(id: ID!, input: UpdateRequestMetadataInput!): UpdateRequestMetadataPayload!
2241
2364
  updateScope(id: ID!, input: UpdateScopeInput!): UpdateScopePayload!
2242
2365
  updateTamperRule(id: ID!, input: UpdateTamperRuleInput!): UpdateTamperRulePayload!
@@ -2259,6 +2382,10 @@ type NameTakenUserError implements UserError {
2259
2382
  name: String!
2260
2383
  }
2261
2384
 
2385
+ type NetworkState {
2386
+ stack: SettingsNetworkStack!
2387
+ }
2388
+
2262
2389
  type NewerVersionUserError implements UserError {
2263
2390
  code: String!
2264
2391
  version: Int!
@@ -2557,8 +2684,9 @@ type QueryRoot {
2557
2684
  interceptStatus: InterceptStatus!
2558
2685
  pluginPackages: [PluginPackage!]!
2559
2686
  projects: [Project!]! @cloud
2560
- replayEntry(id: ID!): ReplayEntry
2687
+ replayEntry(id: ID!, sessionKind: ReplaySessionKind!): ReplayEntry
2561
2688
  replaySession(id: ID!): ReplaySession
2689
+ replaySessionCollection(id: ID!): ReplaySessionCollection
2562
2690
  replaySessionCollections(
2563
2691
  after: String
2564
2692
  before: String
@@ -2607,12 +2735,14 @@ type QueryRoot {
2607
2735
  first: Int
2608
2736
  last: Int
2609
2737
  order: StreamWsMessageOrderInput
2738
+ filter: StreamQLInput
2610
2739
  streamId: ID!
2611
2740
  ): StreamWsMessageConnection!
2612
2741
  streamWsMessagesByOffset(
2613
2742
  limit: Int
2614
2743
  offset: Int
2615
2744
  order: StreamWsMessageOrderInput
2745
+ filter: StreamQLInput
2616
2746
  streamId: ID!
2617
2747
  ): StreamWsMessageConnection!
2618
2748
  streams(
@@ -2620,14 +2750,14 @@ type QueryRoot {
2620
2750
  before: String
2621
2751
  first: Int
2622
2752
  last: Int
2623
- protocol: StreamProtocol!
2753
+ filter: StreamQLInput
2624
2754
  order: StreamOrderInput
2625
2755
  scopeId: ID
2626
2756
  ): StreamConnection!
2627
2757
  streamsByOffset(
2628
2758
  limit: Int
2629
2759
  offset: Int
2630
- protocol: StreamProtocol!
2760
+ filter: StreamQLInput
2631
2761
  order: StreamOrderInput
2632
2762
  scopeId: ID
2633
2763
  ): StreamConnection!
@@ -2834,15 +2964,11 @@ type RenderRequestPayload {
2834
2964
  render: Image
2835
2965
  }
2836
2966
 
2837
- type ReplayEntry {
2838
- connection: ConnectionInfo!
2967
+ interface ReplayEntry {
2839
2968
  createdAt: Timestamp!
2840
2969
  error: String
2841
2970
  id: ID!
2842
- raw: Blob!
2843
- request: Request
2844
2971
  session: ReplaySession!
2845
- settings: ReplayEntrySettings!
2846
2972
  }
2847
2973
 
2848
2974
  type ReplayEntryConnection {
@@ -2876,6 +3002,33 @@ type ReplayEntryEdge {
2876
3002
  node: ReplayEntry!
2877
3003
  }
2878
3004
 
3005
+ type ReplayEntryHttp implements ReplayEntry {
3006
+ connection: ConnectionInfo!
3007
+ createdAt: Timestamp!
3008
+ draft: ReplayEntryHttpDraft
3009
+ error: String
3010
+ id: ID!
3011
+ raw: Blob!
3012
+ request: Request
3013
+ session: ReplaySession!
3014
+ settings: ReplayEntryHttpSettings!
3015
+ }
3016
+
3017
+ type ReplayEntryHttpDraft {
3018
+ connection: ConnectionInfo!
3019
+ editorState: Blob!
3020
+ raw: Blob!
3021
+ settings: ReplayEntryHttpSettings!
3022
+ }
3023
+
3024
+ type ReplayEntryHttpSettings {
3025
+ placeholders: [ReplayPlaceholder!]!
3026
+ }
3027
+
3028
+ input ReplayEntryHttpSettingsInput {
3029
+ placeholders: [ReplayPlaceholderInput!]!
3030
+ }
3031
+
2879
3032
  enum ReplayEntryOrderBy {
2880
3033
  ID
2881
3034
  }
@@ -2885,14 +3038,26 @@ input ReplayEntryOrderInput {
2885
3038
  ordering: Ordering!
2886
3039
  }
2887
3040
 
2888
- type ReplayEntrySettings {
2889
- placeholders: [ReplayPlaceholder!]!
3041
+ type ReplayEntryWs implements ReplayEntry {
3042
+ createdAt: Timestamp!
3043
+ draft: ReplayEntryWsDraft
3044
+ error: String
3045
+ http: ReplayEntryHttp!
3046
+ id: ID!
3047
+ messages: [StreamWsMessage!]!
3048
+ session: ReplaySession!
3049
+ stream: Stream
2890
3050
  }
2891
3051
 
2892
- input ReplayEntrySettingsInput {
2893
- connectionClose: Boolean!
2894
- placeholders: [ReplayPlaceholderInput!]!
2895
- updateContentLength: Boolean!
3052
+ type ReplayEntryWsDraft {
3053
+ direction: StreamMessageDirection!
3054
+ editorState: Blob!
3055
+ format: StreamWsMessageFormat!
3056
+ raw: Blob!
3057
+ }
3058
+
3059
+ input ReplayEntryWsSettingsInput {
3060
+ serverTimeoutMs: Int!
2896
3061
  }
2897
3062
 
2898
3063
  type ReplayEnvironmentPreprocessor {
@@ -2946,16 +3111,7 @@ input ReplayPreprocessorOptionsInput @oneOf {
2946
3111
  workflow: ReplayWorkflowPreprocessorInput
2947
3112
  }
2948
3113
 
2949
- type ReplaySession {
2950
- activeEntry: ReplayEntry
2951
- collection: ReplaySessionCollection!
2952
- entries(
2953
- after: String
2954
- before: String
2955
- first: Int
2956
- last: Int
2957
- order: ReplayEntryOrderInput
2958
- ): ReplayEntryConnection!
3114
+ interface ReplaySession {
2959
3115
  id: ID!
2960
3116
  name: String!
2961
3117
  rank: Rank!
@@ -3030,6 +3186,56 @@ type ReplaySessionEdge {
3030
3186
  node: ReplaySession!
3031
3187
  }
3032
3188
 
3189
+ type ReplaySessionHttp implements ReplaySession {
3190
+ activeEntry: ReplayEntry
3191
+ collection: ReplaySessionCollection!
3192
+ entries(
3193
+ after: String
3194
+ before: String
3195
+ first: Int
3196
+ last: Int
3197
+ order: ReplayEntryOrderInput
3198
+ ): ReplayEntryConnection!
3199
+ id: ID!
3200
+ name: String!
3201
+ rank: Rank!
3202
+ settings: ReplaySessionHttpSettings
3203
+ }
3204
+
3205
+ type ReplaySessionHttpSettings {
3206
+ connectionClose: Boolean!
3207
+ updateContentLength: Boolean!
3208
+ }
3209
+
3210
+ input ReplaySessionHttpSettingsInput {
3211
+ connectionClose: Boolean!
3212
+ updateContentLength: Boolean!
3213
+ }
3214
+
3215
+ enum ReplaySessionKind {
3216
+ HTTP
3217
+ WS
3218
+ }
3219
+
3220
+ input ReplaySessionSettingsInput @oneOf {
3221
+ http: ReplaySessionHttpSettingsInput
3222
+ }
3223
+
3224
+ type ReplaySessionWs implements ReplaySession {
3225
+ activeEntry: ReplayEntry
3226
+ collection: ReplaySessionCollection!
3227
+ entries(
3228
+ after: String
3229
+ before: String
3230
+ first: Int
3231
+ last: Int
3232
+ order: ReplayEntryOrderInput
3233
+ ): ReplayEntryConnection!
3234
+ id: ID!
3235
+ name: String!
3236
+ rank: Rank!
3237
+ }
3238
+
3033
3239
  type ReplaySuffixPreprocessor {
3034
3240
  value: String!
3035
3241
  }
@@ -3042,6 +3248,7 @@ type ReplayTask implements Task {
3042
3248
  createdAt: DateTime!
3043
3249
  id: ID!
3044
3250
  replayEntry: ReplayEntry!
3251
+ sessionKind: ReplaySessionKind!
3045
3252
  }
3046
3253
 
3047
3254
  type ReplayUrlEncodePreprocessor {
@@ -3270,6 +3477,10 @@ type SelectProjectPayload {
3270
3477
 
3271
3478
  union SelectProjectPayloadError = ProjectUserError | UnknownIdUserError | OtherUserError
3272
3479
 
3480
+ type SelectedProjectPayload {
3481
+ currentProject: CurrentProject
3482
+ }
3483
+
3273
3484
  union SendAssistantMessageError =
3274
3485
  | PermissionDeniedUserError
3275
3486
  | TaskInProgressUserError
@@ -3281,6 +3492,27 @@ type SendAssistantMessagePayload {
3281
3492
  task: AssistantMessageTask
3282
3493
  }
3283
3494
 
3495
+ input SendReplayStreamWsMessage {
3496
+ data: Blob!
3497
+ direction: StreamMessageDirection!
3498
+ format: StreamWsMessageFormat!
3499
+ }
3500
+
3501
+ union SendReplayTaskMessageError =
3502
+ | UnknownIdUserError
3503
+ | PermissionDeniedUserError
3504
+ | CloudUserError
3505
+ | OtherUserError
3506
+
3507
+ input SendReplayTaskMessageInput @oneOf {
3508
+ ws: SendReplayStreamWsMessage
3509
+ }
3510
+
3511
+ type SendReplayTaskMessagePayload {
3512
+ error: SendReplayTaskMessageError
3513
+ message: StreamMessage
3514
+ }
3515
+
3284
3516
  scalar Sensitive
3285
3517
 
3286
3518
  type SetActiveReplaySessionEntryPayload {
@@ -3303,6 +3535,7 @@ type SetConfigProjectPayload {
3303
3535
  input SetInstanceSettingsInput @oneOf {
3304
3536
  aiProvider: SettingsAIProviderInput
3305
3537
  analytics: SettingsAnalyticInput
3538
+ network: SettingsNetworkInput
3306
3539
  onboarding: SettingsOnboardingInput
3307
3540
  }
3308
3541
 
@@ -3336,6 +3569,15 @@ input SettingsAnalyticInput {
3336
3569
  enabled: Boolean!
3337
3570
  }
3338
3571
 
3572
+ input SettingsNetworkInput {
3573
+ stack: SettingsNetworkStack!
3574
+ }
3575
+
3576
+ enum SettingsNetworkStack {
3577
+ V1
3578
+ V2
3579
+ }
3580
+
3339
3581
  input SettingsOnboardingInput {
3340
3582
  analytic: Boolean!
3341
3583
  }
@@ -3458,17 +3700,12 @@ type StartExportRequestsTaskPayload {
3458
3700
  union StartExportRequestsTaskPayloadError = PermissionDeniedUserError | OtherUserError
3459
3701
 
3460
3702
  union StartReplayTaskError =
3703
+ | UnknownIdUserError
3461
3704
  | TaskInProgressUserError
3462
3705
  | PermissionDeniedUserError
3463
3706
  | CloudUserError
3464
3707
  | OtherUserError
3465
3708
 
3466
- input StartReplayTaskInput {
3467
- connection: ConnectionInfoInput!
3468
- raw: Blob!
3469
- settings: ReplayEntrySettingsInput!
3470
- }
3471
-
3472
3709
  type StartReplayTaskPayload {
3473
3710
  error: StartReplayTaskError
3474
3711
  task: ReplayTask
@@ -3490,6 +3727,12 @@ type StartedTaskPayload {
3490
3727
  task: Task!
3491
3728
  }
3492
3729
 
3730
+ type StopReplayWsTaskPayload {
3731
+ error: StopReplayWsTaskPayloadError
3732
+ }
3733
+
3734
+ union StopReplayWsTaskPayloadError = UnknownIdUserError | OtherUserError
3735
+
3493
3736
  type Store {
3494
3737
  pluginPackages: [StorePluginPackage!]! @cloud
3495
3738
  }
@@ -3574,6 +3817,8 @@ type StreamEdge {
3574
3817
  node: Stream!
3575
3818
  }
3576
3819
 
3820
+ union StreamMessage = StreamWsMessage
3821
+
3577
3822
  enum StreamMessageDirection {
3578
3823
  CLIENT
3579
3824
  SERVER
@@ -3656,6 +3901,9 @@ type StreamWsMessageEditRef {
3656
3901
 
3657
3902
  enum StreamWsMessageFormat {
3658
3903
  BINARY
3904
+ CLOSE
3905
+ PING
3906
+ PONG
3659
3907
  TEXT
3660
3908
  }
3661
3909
 
@@ -3696,7 +3944,7 @@ type SubscriptionRoot {
3696
3944
  createdScope: CreatedScopePayload!
3697
3945
  createdSitemapEntry(scopeId: ID): CreatedSitemapEntryPayload!
3698
3946
  createdStream(protocol: StreamProtocol!, scopeId: ID): CreatedStreamPayload!
3699
- createdStreamWsMessage: CreatedStreamWsMessagePayload!
3947
+ createdStreamWsMessage(filter: StreamQLInput): CreatedStreamWsMessagePayload!
3700
3948
  createdTamperRule: CreatedTamperRulePayload!
3701
3949
  createdTamperRuleCollection: CreatedTamperRuleCollectionPayload!
3702
3950
  createdUpstreamPlugin: CreatedUpstreamPluginPayload!
@@ -3737,6 +3985,7 @@ type SubscriptionRoot {
3737
3985
  finishedRestoreBackupTask: FinishedRestoreBackupTaskPayload!
3738
3986
  finishedTask: FinishedTaskPayload!
3739
3987
  installedBrowser: UploadedBrowserPayload!
3988
+ selectedProject: SelectedProjectPayload!
3740
3989
  startedBackupTask: StartedBackupTaskPayload!
3741
3990
  startedDeleteInterceptEntriesTask: StartedDeleteInterceptEntriesTaskPayload!
3742
3991
  startedRestoreBackupTask: StartedRestoreBackupTaskPayload!
@@ -3765,13 +4014,15 @@ type SubscriptionRoot {
3765
4014
  updatedPlugin: UpdatedPluginPayload!
3766
4015
  updatedPluginPackage: UpdatedPluginPackagePayload!
3767
4016
  updatedProject: UpdatedProjectPayload!
4017
+ updatedReplayEntryDraft: UpdatedReplayEntryDraftPayload!
4018
+ updatedReplayEntryWs: UpdatedReplayEntryWsPayload!
3768
4019
  updatedReplaySession: UpdatedReplaySessionPayload!
3769
4020
  updatedReplaySessionCollection: UpdatedReplaySessionCollectionPayload!
3770
4021
  updatedRequest(filter: HTTPQLInput, scopeId: ID): UpdatedRequestPayload!
3771
4022
  updatedRequestMetadata: UpdatedRequestMetadataPayload!
3772
4023
  updatedScope: UpdatedScopePayload!
3773
4024
  updatedSitemapEntry(scopeId: ID): UpdatedSitemapEntryPayload!
3774
- updatedStreamWsMessage: UpdatedStreamWsMessagePayload!
4025
+ updatedStreamWsMessage(filter: StreamQLInput): UpdatedStreamWsMessagePayload!
3775
4026
  updatedTamperRule: UpdatedTamperRulePayload!
3776
4027
  updatedTamperRuleCollection: UpdatedTamperRuleCollectionPayload!
3777
4028
  updatedUpstreamPlugin: UpdatedUpstreamPluginPayload!
@@ -4037,6 +4288,22 @@ input TamperOperationStatusCodeUpdateInput {
4037
4288
  replacer: TamperReplacerInput!
4038
4289
  }
4039
4290
 
4291
+ union TamperOperationStreamWsMessage = TamperOperationStreamWsMessageRaw
4292
+
4293
+ input TamperOperationStreamWsMessageInput @oneOf {
4294
+ raw: TamperOperationStreamWsMessageRawInput
4295
+ }
4296
+
4297
+ type TamperOperationStreamWsMessageRaw {
4298
+ matcher: TamperMatcherRaw!
4299
+ replacer: TamperReplacer!
4300
+ }
4301
+
4302
+ input TamperOperationStreamWsMessageRawInput {
4303
+ matcher: TamperMatcherRawInput!
4304
+ replacer: TamperReplacerInput!
4305
+ }
4306
+
4040
4307
  union TamperReplacer = TamperReplacerTerm | TamperReplacerWorkflow
4041
4308
 
4042
4309
  input TamperReplacerInput @oneOf {
@@ -4108,6 +4375,8 @@ union TamperSection =
4108
4375
  | TamperSectionResponseFirstLine
4109
4376
  | TamperSectionResponseHeader
4110
4377
  | TamperSectionResponseAll
4378
+ | TamperSectionStreamWsMessageUpstream
4379
+ | TamperSectionStreamWsMessageDownstream
4111
4380
 
4112
4381
  input TamperSectionInput @oneOf {
4113
4382
  requestAll: TamperSectionRequestAllInput
@@ -4123,6 +4392,8 @@ input TamperSectionInput @oneOf {
4123
4392
  responseFirstLine: TamperSectionResponseFirstLineInput
4124
4393
  responseHeader: TamperSectionResponseHeaderInput
4125
4394
  responseStatusCode: TamperSectionResponseStatusCodeInput
4395
+ streamWsMessageDownstream: TamperSectionStreamWsMessageInput
4396
+ streamWsMessageUpstream: TamperSectionStreamWsMessageInput
4126
4397
  }
4127
4398
 
4128
4399
  type TamperSectionRequestAll {
@@ -4229,6 +4500,18 @@ input TamperSectionResponseStatusCodeInput {
4229
4500
  operation: TamperOperationStatusCodeInput!
4230
4501
  }
4231
4502
 
4503
+ type TamperSectionStreamWsMessageDownstream {
4504
+ operation: TamperOperationStreamWsMessage!
4505
+ }
4506
+
4507
+ input TamperSectionStreamWsMessageInput {
4508
+ operation: TamperOperationStreamWsMessageInput!
4509
+ }
4510
+
4511
+ type TamperSectionStreamWsMessageUpstream {
4512
+ operation: TamperOperationStreamWsMessage!
4513
+ }
4514
+
4232
4515
  type TamperSummary {
4233
4516
  collectionsCreated: Int!
4234
4517
  rulesImported: Int!
@@ -4264,6 +4547,15 @@ type TestAIProviderPayload {
4264
4547
  success: Boolean
4265
4548
  }
4266
4549
 
4550
+ input TestExtractorInput {
4551
+ extractor: AutomateExtractorInput!
4552
+ testInput: Blob!
4553
+ }
4554
+
4555
+ type TestExtractorPayload {
4556
+ extracts: [Blob!]
4557
+ }
4558
+
4267
4559
  union TestTamperRuleError = InvalidRegexUserError | OtherUserError
4268
4560
 
4269
4561
  input TestTamperRuleInput {
@@ -4470,6 +4762,7 @@ union UpdateFilterPresetError = NameTakenUserError | AliasTakenUserError | Other
4470
4762
  input UpdateFilterPresetInput {
4471
4763
  alias: Alias!
4472
4764
  clause: QueryInput!
4765
+ global: Boolean!
4473
4766
  name: String!
4474
4767
  }
4475
4768
 
@@ -4491,6 +4784,34 @@ type UpdateFindingPayload {
4491
4784
  finding: Finding
4492
4785
  }
4493
4786
 
4787
+ input UpdateReplayEntryDraftInput @oneOf {
4788
+ http: UpdateReplayEntryHttpDraftInput
4789
+ ws: UpdateReplayEntryWsDraftInput
4790
+ }
4791
+
4792
+ type UpdateReplayEntryDraftPayload {
4793
+ entry: ReplayEntry
4794
+ }
4795
+
4796
+ input UpdateReplayEntryHttpDraftInput {
4797
+ connection: ConnectionInfoInput!
4798
+ editorState: Blob!
4799
+ raw: Blob!
4800
+ settings: ReplayEntryHttpSettingsInput!
4801
+ }
4802
+
4803
+ input UpdateReplayEntryWsDraftInput {
4804
+ direction: StreamMessageDirection!
4805
+ editorState: Blob!
4806
+ format: StreamWsMessageFormat!
4807
+ raw: Blob!
4808
+ settings: ReplayEntryWsSettingsInput!
4809
+ }
4810
+
4811
+ type UpdateReplaySessionSettingsPayload {
4812
+ session: ReplaySession
4813
+ }
4814
+
4494
4815
  input UpdateRequestMetadataInput {
4495
4816
  color: String
4496
4817
  }
@@ -4700,6 +5021,16 @@ type UpdatedProjectPayload {
4700
5021
  project: Project!
4701
5022
  }
4702
5023
 
5024
+ type UpdatedReplayEntryDraftPayload {
5025
+ entry: ReplayEntry!
5026
+ snapshot: Snapshot!
5027
+ }
5028
+
5029
+ type UpdatedReplayEntryWsPayload {
5030
+ entry: ReplayEntryWs
5031
+ snapshot: Snapshot!
5032
+ }
5033
+
4703
5034
  type UpdatedReplaySessionCollectionPayload {
4704
5035
  collectionEdge: ReplaySessionCollectionEdge!
4705
5036
  snapshot: Snapshot!
@@ -4733,11 +5064,13 @@ type UpdatedSitemapEntryPayload {
4733
5064
  snapshot: Snapshot!
4734
5065
  }
4735
5066
 
4736
- type UpdatedStreamWsMessagePayload {
5067
+ type UpdatedStreamWsMessage {
4737
5068
  messageEdge(order: StreamWsMessageOrderInput): StreamWsMessageEdge!
4738
5069
  snapshot: Snapshot!
4739
5070
  }
4740
5071
 
5072
+ union UpdatedStreamWsMessagePayload = UpdatedStreamWsMessage | HiddenStreamWsMessage
5073
+
4741
5074
  type UpdatedTamperRuleCollectionPayload {
4742
5075
  collectionEdge: TamperRuleCollectionEdge!
4743
5076
  snapshot: Snapshot!
@@ -4884,6 +5217,17 @@ type UserSubscriptionPlan {
4884
5217
 
4885
5218
  scalar Version
4886
5219
 
5220
+ enum WSErrorReason {
5221
+ COULD_NOT_UPGRADE_CONNECTION
5222
+ SERVER_UNRESPONSIVE
5223
+ }
5224
+
5225
+ type WSUserError implements UserError {
5226
+ code: String!
5227
+ message: String!
5228
+ reason: WSErrorReason!
5229
+ }
5230
+
4887
5231
  type Workflow {
4888
5232
  createdAt: DateTime!
4889
5233
  definition: JsonObject!