@kadoa/node-sdk 0.19.2 → 0.19.4-beta.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/dist/index.d.mts CHANGED
@@ -1032,9 +1032,50 @@ type ChangeDetectionResultStrategyEnum = typeof ChangeDetectionResultStrategyEnu
1032
1032
  * https://openapi-generator.tech
1033
1033
  * Do not edit the class manually.
1034
1034
  */
1035
- interface CreateRuleParameters {
1036
- 'sql'?: string;
1037
- 'params'?: Array<any | null>;
1035
+ /**
1036
+ * Crawling session item
1037
+ */
1038
+ interface CrawlerSessionItem {
1039
+ /**
1040
+ * Session ID
1041
+ */
1042
+ 'sessionId': string;
1043
+ /**
1044
+ * Config ID
1045
+ */
1046
+ 'configId': string;
1047
+ /**
1048
+ * Domain being crawled
1049
+ */
1050
+ 'domain': string;
1051
+ /**
1052
+ * URLs used to start the crawl
1053
+ */
1054
+ 'startUrls': Array<string>;
1055
+ /**
1056
+ * User ID who created the session
1057
+ */
1058
+ 'userId': string;
1059
+ /**
1060
+ * Session creation timestamp
1061
+ */
1062
+ 'createdAt': string;
1063
+ /**
1064
+ * Number of active jobs (live stat)
1065
+ */
1066
+ 'activeJobs'?: number;
1067
+ /**
1068
+ * Number of waiting jobs (live stat)
1069
+ */
1070
+ 'waitingJobs'?: number;
1071
+ /**
1072
+ * Number of crawled pages (live stat)
1073
+ */
1074
+ 'crawledPages'?: number;
1075
+ /**
1076
+ * Whether session has finished
1077
+ */
1078
+ 'finished'?: boolean;
1038
1079
  }
1039
1080
 
1040
1081
  /**
@@ -1048,32 +1089,57 @@ interface CreateRuleParameters {
1048
1089
  * https://openapi-generator.tech
1049
1090
  * Do not edit the class manually.
1050
1091
  */
1092
+ /**
1093
+ * Artifact capture options derived from legacy launch summary
1094
+ */
1095
+ interface CreateCrawlerConfigRequestArtifactOptions {
1096
+ /**
1097
+ * Capture standard screenshot
1098
+ */
1099
+ 'screenshot'?: boolean;
1100
+ /**
1101
+ * Capture full-page screenshot
1102
+ */
1103
+ 'screenshotFull'?: boolean;
1104
+ /**
1105
+ * Re-use cached screenshot when available
1106
+ */
1107
+ 'screenshotCache'?: boolean;
1108
+ /**
1109
+ * Make captured screenshot publicly accessible
1110
+ */
1111
+ 'screenshotPublic'?: boolean;
1112
+ /**
1113
+ * Stored screenshot link for follow-up processing
1114
+ */
1115
+ 'screenshotLink'?: string;
1116
+ /**
1117
+ * Generate archival PDF for crawled pages
1118
+ */
1119
+ 'archivePdf'?: boolean;
1120
+ }
1051
1121
 
1052
1122
  /**
1053
- * Request body for creating a new validation rule
1123
+ * Kadoa API
1124
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1125
+ *
1126
+ * The version of the OpenAPI document: 3.0.0
1127
+ * Contact: support@kadoa.com
1128
+ *
1129
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1130
+ * https://openapi-generator.tech
1131
+ * Do not edit the class manually.
1054
1132
  */
1055
- interface CreateRule {
1056
- 'name': string;
1133
+ /**
1134
+ * Blueprint field definition
1135
+ */
1136
+ interface CreateCrawlerConfigRequestBlueprintInner {
1137
+ [key: string]: any;
1138
+ 'name'?: string;
1057
1139
  'description'?: string;
1058
- 'ruleType': CreateRuleRuleTypeEnum;
1059
- 'workflowId'?: string;
1060
- 'targetColumns'?: Array<string>;
1061
- 'parameters': CreateRuleParameters;
1062
- 'status'?: CreateRuleStatusEnum;
1063
- 'metadata'?: {
1064
- [key: string]: any | null;
1065
- };
1140
+ 'selector'?: string;
1141
+ 'type'?: string;
1066
1142
  }
1067
- declare const CreateRuleRuleTypeEnum: {
1068
- readonly CustomSql: "custom_sql";
1069
- };
1070
- type CreateRuleRuleTypeEnum = typeof CreateRuleRuleTypeEnum[keyof typeof CreateRuleRuleTypeEnum];
1071
- declare const CreateRuleStatusEnum: {
1072
- readonly Preview: "preview";
1073
- readonly Enabled: "enabled";
1074
- readonly Disabled: "disabled";
1075
- };
1076
- type CreateRuleStatusEnum = typeof CreateRuleStatusEnum[keyof typeof CreateRuleStatusEnum];
1077
1143
 
1078
1144
  /**
1079
1145
  * Kadoa API
@@ -1086,23 +1152,15 @@ type CreateRuleStatusEnum = typeof CreateRuleStatusEnum[keyof typeof CreateRuleS
1086
1152
  * https://openapi-generator.tech
1087
1153
  * Do not edit the class manually.
1088
1154
  */
1089
-
1090
1155
  /**
1091
- * Request body for creating a new schema
1156
+ * Crawl method configuration
1092
1157
  */
1093
- interface CreateSchemaBody {
1094
- /**
1095
- * Name of the schema
1096
- */
1097
- 'name': string;
1098
- /**
1099
- * Entity type for the schema
1100
- */
1101
- 'entity'?: string;
1158
+ interface CreateCrawlerConfigRequestCrawlMethod {
1159
+ [key: string]: any;
1102
1160
  /**
1103
- * Schema fields for extraction - choose from Data Field (typed data), Raw Content Field (HTML/Markdown), or Classification Field (predefined categories)
1161
+ * Crawler execution type (e.g. puppeteer, impit)
1104
1162
  */
1105
- 'fields': Array<SchemaResponseSchemaInner>;
1163
+ 'type': string;
1106
1164
  }
1107
1165
 
1108
1166
  /**
@@ -1116,119 +1174,127 @@ interface CreateSchemaBody {
1116
1174
  * https://openapi-generator.tech
1117
1175
  * Do not edit the class manually.
1118
1176
  */
1119
-
1120
1177
  /**
1121
- * Create a workflow by defining extraction entity and fields directly in the request. Inline your schema definition to quickly set up custom data extraction without creating a schema separately. Example: `{\"urls\": [\"https://example.com\"], \"entity\": \"Product\", \"fields\": [{\"name\": \"title\", \"description\": \"Product title\", \"fieldType\": \"SCHEMA\", \"dataType\": \"STRING\"}, {\"name\": \"price\", \"description\": \"Product price\", \"fieldType\": \"SCHEMA\", \"dataType\": \"NUMBER\"}]}`
1178
+ * Extraction-related options derived from legacy launch summary
1122
1179
  */
1123
- interface WorkflowWithEntityAndFields {
1124
- /**
1125
- * List of URLs to scrape. Can be a single URL or multiple URLs to scrape across different pages or domains.
1126
- */
1127
- 'urls': Array<string>;
1180
+ interface CreateCrawlerConfigRequestExtractionOptions {
1128
1181
  /**
1129
- * Navigation mode for scraping
1182
+ * Feature toggles for available extraction helpers
1130
1183
  */
1131
- 'navigationMode'?: WorkflowWithEntityAndFieldsNavigationModeEnum;
1184
+ 'extractions'?: {
1185
+ [key: string]: boolean;
1186
+ };
1132
1187
  /**
1133
- * Human-readable name for this workflow (e.g., \'Product Catalog Scraper\')
1188
+ * Schema definition for structured extractions
1134
1189
  */
1135
- 'name'?: string;
1190
+ 'schema'?: any | null;
1136
1191
  /**
1137
- * Detailed description of what this workflow does and why it was created (maximum 500 characters)
1192
+ * Entity metadata used for extraction mappings
1138
1193
  */
1139
- 'description'?: string;
1194
+ 'entity'?: any | null;
1140
1195
  /**
1141
- * Tags for organizing and categorizing workflows (minimum 3 characters per tag)
1196
+ * CSS selector anchoring focus-driven extractors
1142
1197
  */
1143
- 'tags'?: Array<string>;
1198
+ 'mainContextSelector'?: string;
1144
1199
  /**
1145
- * Maximum number of items to scrape. Useful for limiting scope during development or cost control
1200
+ * XHR extractor configuration entries
1146
1201
  */
1147
- 'limit'?: number;
1148
- 'location'?: Location;
1149
- 'monitoring'?: MonitoringConfig;
1202
+ 'xhrExtractorConfigs'?: Array<any | null>;
1203
+ }
1204
+
1205
+ /**
1206
+ * Kadoa API
1207
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1208
+ *
1209
+ * The version of the OpenAPI document: 3.0.0
1210
+ * Contact: support@kadoa.com
1211
+ *
1212
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1213
+ * https://openapi-generator.tech
1214
+ * Do not edit the class manually.
1215
+ */
1216
+ /**
1217
+ * @type CreateCrawlerConfigRequestNavigationOptionsCachedCookieAccept
1218
+ * Reuse cached cookie acceptance flow
1219
+ */
1220
+ type CreateCrawlerConfigRequestNavigationOptionsCachedCookieAccept = boolean | string;
1221
+
1222
+ /**
1223
+ * Kadoa API
1224
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1225
+ *
1226
+ * The version of the OpenAPI document: 3.0.0
1227
+ * Contact: support@kadoa.com
1228
+ *
1229
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1230
+ * https://openapi-generator.tech
1231
+ * Do not edit the class manually.
1232
+ */
1233
+
1234
+ /**
1235
+ * Navigation-related options derived from legacy launch summary
1236
+ */
1237
+ interface CreateCrawlerConfigRequestNavigationOptions {
1150
1238
  /**
1151
- * How frequently this workflow should run (ONLY_ONCE, HOURLY, DAILY, WEEKLY, etc.)
1239
+ * Ordered list of scripted browser actions executed after navigation
1152
1240
  */
1153
- 'interval'?: WorkflowWithEntityAndFieldsIntervalEnum;
1241
+ 'browserActions'?: Array<{
1242
+ [key: string]: any;
1243
+ }>;
1154
1244
  /**
1155
- * Cron expressions for custom schedules. Overrides the interval setting for fine-grained control
1245
+ * Browser actions performed before the main action chain
1156
1246
  */
1157
- 'schedules'?: Array<string>;
1247
+ 'preBrowserActions'?: Array<{
1248
+ [key: string]: any;
1249
+ }>;
1158
1250
  /**
1159
- * Skip preview and validation, deploy scraper immediately. Use with caution - set to true only when you\'re confident the configuration is correct
1251
+ * Enable HTML capture while scrolling through the page
1160
1252
  */
1161
- 'bypassPreview'?: boolean;
1253
+ 'scrollHtml'?: boolean;
1162
1254
  /**
1163
- * Automatically start the workflow after creation. Set to false if you want to test/review before starting
1255
+ * Maximum scroll duration in milliseconds
1164
1256
  */
1165
- 'autoStart'?: boolean;
1257
+ 'scrollHtmlTimeout'?: number;
1166
1258
  /**
1167
- * Browser interactions to perform before scraping (e.g., clicking buttons, filling forms, scrolling). See Interaction schema for available action types
1259
+ * Enable visual HTML capture for navigation heuristics
1168
1260
  */
1169
- 'interactions'?: Array<Interaction>;
1261
+ 'visualHtml'?: boolean;
1170
1262
  /**
1171
- * Enable data quality validation. When true, scraped data is validated against the schema and anomalies are detected
1263
+ * Primary navigation strategy identifier
1172
1264
  */
1173
- 'dataValidationEnabled'?: boolean;
1265
+ 'navigationStrategy'?: string;
1174
1266
  /**
1175
- * Additional data for the workflow (e.g. IDs from your system to link data)
1267
+ * Fallback navigation strategy order
1176
1268
  */
1177
- 'additionalData'?: any | null;
1269
+ 'navigationStrategies'?: Array<string>;
1178
1270
  /**
1179
- * Maximum pages to crawl (default: 10,000, max: 100,000). Only used when navigationMode is \'all-pages\'
1271
+ * Maximum number of navigation steps
1180
1272
  */
1181
- 'maxPages'?: number;
1273
+ 'limit'?: number;
1182
1274
  /**
1183
- * Maximum crawl depth (default: 50, max: 200). Only used when navigationMode is \'all-pages\'
1275
+ * Skip automated navigation heuristics
1184
1276
  */
1185
- 'maxDepth'?: number;
1277
+ 'disableNavigation'?: boolean;
1186
1278
  /**
1187
- * Regex patterns to include specific paths during crawling. Only used when navigationMode is \'all-pages\'
1279
+ * Disable iframe traversal during navigation
1188
1280
  */
1189
- 'pathsFilterIn'?: Array<string>;
1281
+ 'ignoreIframes'?: boolean;
1190
1282
  /**
1191
- * Regex patterns to exclude specific paths during crawling. Only used when navigationMode is \'all-pages\'
1283
+ * Navigation exploration tuning payload
1192
1284
  */
1193
- 'pathsFilterOut'?: Array<string>;
1285
+ 'navigationExploration'?: {
1286
+ [key: string]: any;
1287
+ };
1194
1288
  /**
1195
- * Entity name for extraction (e.g., \'Product\', \'JobListing\')
1289
+ * Skip scripted interactions and only capture HTML
1196
1290
  */
1197
- 'entity': string;
1291
+ 'loadHtmlOnly'?: boolean;
1198
1292
  /**
1199
- * Array of fields to extract from each item. Each field defines a property to capture (e.g., title, price, description)
1293
+ * Force cookie acceptance automation
1200
1294
  */
1201
- 'fields': Array<SchemaResponseSchemaInner>;
1295
+ 'acceptCookies'?: boolean;
1296
+ 'cachedCookieAccept'?: CreateCrawlerConfigRequestNavigationOptionsCachedCookieAccept;
1202
1297
  }
1203
- declare const WorkflowWithEntityAndFieldsNavigationModeEnum: {
1204
- readonly SinglePage: "single-page";
1205
- readonly PaginatedPage: "paginated-page";
1206
- readonly PageAndDetail: "page-and-detail";
1207
- readonly AgenticNavigation: "agentic-navigation";
1208
- readonly AllPages: "all-pages";
1209
- };
1210
- type WorkflowWithEntityAndFieldsNavigationModeEnum = typeof WorkflowWithEntityAndFieldsNavigationModeEnum[keyof typeof WorkflowWithEntityAndFieldsNavigationModeEnum];
1211
- declare const WorkflowWithEntityAndFieldsIntervalEnum: {
1212
- readonly OnlyOnce: "ONLY_ONCE";
1213
- readonly Every10Minutes: "EVERY_10_MINUTES";
1214
- readonly HalfHourly: "HALF_HOURLY";
1215
- readonly Hourly: "HOURLY";
1216
- readonly ThreeHourly: "THREE_HOURLY";
1217
- readonly SixHourly: "SIX_HOURLY";
1218
- readonly TwelveHourly: "TWELVE_HOURLY";
1219
- readonly EighteenHourly: "EIGHTEEN_HOURLY";
1220
- readonly Daily: "DAILY";
1221
- readonly TwoDay: "TWO_DAY";
1222
- readonly ThreeDay: "THREE_DAY";
1223
- readonly Weekly: "WEEKLY";
1224
- readonly Biweekly: "BIWEEKLY";
1225
- readonly Triweekly: "TRIWEEKLY";
1226
- readonly FourWeeks: "FOUR_WEEKS";
1227
- readonly Monthly: "MONTHLY";
1228
- readonly RealTime: "REAL_TIME";
1229
- readonly Custom: "CUSTOM";
1230
- };
1231
- type WorkflowWithEntityAndFieldsIntervalEnum = typeof WorkflowWithEntityAndFieldsIntervalEnum[keyof typeof WorkflowWithEntityAndFieldsIntervalEnum];
1232
1298
 
1233
1299
  /**
1234
1300
  * Kadoa API
@@ -1243,90 +1309,499 @@ type WorkflowWithEntityAndFieldsIntervalEnum = typeof WorkflowWithEntityAndField
1243
1309
  */
1244
1310
 
1245
1311
  /**
1246
- * Create a workflow using a pre-defined schema configuration. Reference an existing schema by ID to extract data without re-defining fields. Perfect when you have multiple workflows using the same data structure. Example: `{\"urls\": [\"https://example.com\"], \"schemaId\": \"schema-abc123\", \"interval\": \"DAILY\"}`
1312
+ * Request body for creating a new crawling configuration
1247
1313
  */
1248
- interface WorkflowWithExistingSchema {
1314
+ interface CreateCrawlerConfigRequest {
1249
1315
  /**
1250
- * List of URLs to scrape. Can be a single URL or multiple URLs to scrape across different pages or domains.
1316
+ * Single URL to start crawling (for backward compatibility)
1251
1317
  */
1252
- 'urls': Array<string>;
1318
+ 'url'?: string;
1253
1319
  /**
1254
- * Navigation mode for scraping
1320
+ * List of URLs for crawling
1255
1321
  */
1256
- 'navigationMode'?: WorkflowWithExistingSchemaNavigationModeEnum;
1322
+ 'startUrls'?: Array<string>;
1257
1323
  /**
1258
- * Human-readable name for this workflow (e.g., \'Product Catalog Scraper\')
1324
+ * Regex patterns to include specific paths
1259
1325
  */
1260
- 'name'?: string;
1326
+ 'pathsFilterIn'?: Array<string>;
1261
1327
  /**
1262
- * Detailed description of what this workflow does and why it was created (maximum 500 characters)
1328
+ * Regex patterns to exclude specific paths
1263
1329
  */
1264
- 'description'?: string;
1330
+ 'pathsFilterOut'?: Array<string>;
1265
1331
  /**
1266
- * Tags for organizing and categorizing workflows (minimum 3 characters per tag)
1332
+ * Type of proxy to use
1267
1333
  */
1268
- 'tags'?: Array<string>;
1334
+ 'proxyType'?: string | null;
1269
1335
  /**
1270
- * Maximum number of items to scrape. Useful for limiting scope during development or cost control
1336
+ * Country for proxy selection
1271
1337
  */
1272
- 'limit'?: number;
1273
- 'location'?: Location;
1274
- 'monitoring'?: MonitoringConfig;
1338
+ 'proxyCountry'?: string | null;
1275
1339
  /**
1276
- * How frequently this workflow should run (ONLY_ONCE, HOURLY, DAILY, WEEKLY, etc.)
1340
+ * Timeout in milliseconds
1277
1341
  */
1278
- 'interval'?: WorkflowWithExistingSchemaIntervalEnum;
1342
+ 'timeout'?: number;
1279
1343
  /**
1280
- * Cron expressions for custom schedules. Overrides the interval setting for fine-grained control
1344
+ * Maximum crawling depth
1281
1345
  */
1282
- 'schedules'?: Array<string>;
1346
+ 'maxDepth'?: number;
1283
1347
  /**
1284
- * Skip preview and validation, deploy scraper immediately. Use with caution - set to true only when you\'re confident the configuration is correct
1348
+ * Maximum number of pages to crawl
1285
1349
  */
1286
- 'bypassPreview'?: boolean;
1350
+ 'maxPages'?: number;
1287
1351
  /**
1288
- * Automatically start the workflow after creation. Set to false if you want to test/review before starting
1352
+ * Maximum number of matched pages to crawl before stopping
1289
1353
  */
1290
- 'autoStart'?: boolean;
1354
+ 'maxMatches'?: number;
1291
1355
  /**
1292
- * Browser interactions to perform before scraping (e.g., clicking buttons, filling forms, scrolling). See Interaction schema for available action types
1356
+ * Number of concurrent crawlers
1293
1357
  */
1294
- 'interactions'?: Array<Interaction>;
1358
+ 'concurrency'?: number;
1295
1359
  /**
1296
- * Enable data quality validation. When true, scraped data is validated against the schema and anomalies are detected
1360
+ * Whether to stay within the same domain
1297
1361
  */
1298
- 'dataValidationEnabled'?: boolean;
1362
+ 'strictDomain'?: boolean;
1299
1363
  /**
1300
- * Additional data for the workflow (e.g. IDs from your system to link data)
1364
+ * Whether to load images during crawling
1301
1365
  */
1302
- 'additionalData'?: any | null;
1366
+ 'loadImages'?: boolean;
1303
1367
  /**
1304
- * Maximum pages to crawl (default: 10,000, max: 100,000). Only used when navigationMode is \'all-pages\'
1368
+ * Enable safe mode for crawling
1305
1369
  */
1306
- 'maxPages'?: number;
1370
+ 'safeMode'?: boolean;
1307
1371
  /**
1308
- * Maximum crawl depth (default: 50, max: 200). Only used when navigationMode is \'all-pages\'
1372
+ * Webhook URL for completion notifications
1309
1373
  */
1310
- 'maxDepth'?: number;
1374
+ 'callbackUrl'?: string | null;
1311
1375
  /**
1312
- * Regex patterns to include specific paths during crawling. Only used when navigationMode is \'all-pages\'
1376
+ * Whether to run preprocessing and extraction during the crawl phase
1313
1377
  */
1314
- 'pathsFilterIn'?: Array<string>;
1378
+ 'processDuringCrawl'?: boolean;
1379
+ 'crawlMethod'?: CreateCrawlerConfigRequestCrawlMethod;
1315
1380
  /**
1316
- * Regex patterns to exclude specific paths during crawling. Only used when navigationMode is \'all-pages\'
1381
+ * Match threshold override for blueprint filtering
1317
1382
  */
1318
- 'pathsFilterOut'?: Array<string>;
1383
+ 'matchThreshold'?: number;
1319
1384
  /**
1320
- * ID of an existing schema configuration. Use this to reference a previously defined schema without re-defining extraction fields
1385
+ * Blueprint fields applied during crawling
1321
1386
  */
1322
- 'schemaId': string;
1387
+ 'blueprint'?: Array<CreateCrawlerConfigRequestBlueprintInner>;
1388
+ 'extractionOptions'?: CreateCrawlerConfigRequestExtractionOptions;
1389
+ 'navigationOptions'?: CreateCrawlerConfigRequestNavigationOptions;
1390
+ 'artifactOptions'?: CreateCrawlerConfigRequestArtifactOptions;
1323
1391
  }
1324
- declare const WorkflowWithExistingSchemaNavigationModeEnum: {
1325
- readonly SinglePage: "single-page";
1326
- readonly PaginatedPage: "paginated-page";
1327
- readonly PageAndDetail: "page-and-detail";
1328
- readonly AgenticNavigation: "agentic-navigation";
1329
- readonly AllPages: "all-pages";
1392
+
1393
+ /**
1394
+ * Kadoa API
1395
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1396
+ *
1397
+ * The version of the OpenAPI document: 3.0.0
1398
+ * Contact: support@kadoa.com
1399
+ *
1400
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1401
+ * https://openapi-generator.tech
1402
+ * Do not edit the class manually.
1403
+ */
1404
+
1405
+ /**
1406
+ * Response schema for creating a new crawling configuration
1407
+ */
1408
+ interface CreateCrawlerConfigResponse {
1409
+ /**
1410
+ * Single URL to start crawling (for backward compatibility)
1411
+ */
1412
+ 'url'?: string;
1413
+ /**
1414
+ * List of URLs for crawling
1415
+ */
1416
+ 'startUrls'?: Array<string>;
1417
+ /**
1418
+ * Regex patterns to include specific paths
1419
+ */
1420
+ 'pathsFilterIn'?: Array<string>;
1421
+ /**
1422
+ * Regex patterns to exclude specific paths
1423
+ */
1424
+ 'pathsFilterOut'?: Array<string>;
1425
+ /**
1426
+ * Type of proxy to use
1427
+ */
1428
+ 'proxyType'?: string | null;
1429
+ /**
1430
+ * Country for proxy selection
1431
+ */
1432
+ 'proxyCountry'?: string | null;
1433
+ /**
1434
+ * Timeout in milliseconds
1435
+ */
1436
+ 'timeout'?: number;
1437
+ /**
1438
+ * Maximum crawling depth
1439
+ */
1440
+ 'maxDepth'?: number;
1441
+ /**
1442
+ * Maximum number of pages to crawl
1443
+ */
1444
+ 'maxPages'?: number;
1445
+ /**
1446
+ * Maximum number of matched pages to crawl before stopping
1447
+ */
1448
+ 'maxMatches'?: number;
1449
+ /**
1450
+ * Number of concurrent crawlers
1451
+ */
1452
+ 'concurrency'?: number;
1453
+ /**
1454
+ * Whether to stay within the same domain
1455
+ */
1456
+ 'strictDomain'?: boolean;
1457
+ /**
1458
+ * Whether to load images during crawling
1459
+ */
1460
+ 'loadImages'?: boolean;
1461
+ /**
1462
+ * Enable safe mode for crawling
1463
+ */
1464
+ 'safeMode'?: boolean;
1465
+ /**
1466
+ * Webhook URL for completion notifications
1467
+ */
1468
+ 'callbackUrl'?: string | null;
1469
+ /**
1470
+ * Whether to run preprocessing and extraction during the crawl phase
1471
+ */
1472
+ 'processDuringCrawl'?: boolean;
1473
+ 'crawlMethod'?: CreateCrawlerConfigRequestCrawlMethod;
1474
+ /**
1475
+ * Match threshold override for blueprint filtering
1476
+ */
1477
+ 'matchThreshold'?: number;
1478
+ /**
1479
+ * Blueprint fields applied during crawling
1480
+ */
1481
+ 'blueprint'?: Array<CreateCrawlerConfigRequestBlueprintInner>;
1482
+ 'extractionOptions'?: CreateCrawlerConfigRequestExtractionOptions;
1483
+ 'navigationOptions'?: CreateCrawlerConfigRequestNavigationOptions;
1484
+ 'artifactOptions'?: CreateCrawlerConfigRequestArtifactOptions;
1485
+ /**
1486
+ * Config ID
1487
+ */
1488
+ 'configId': string;
1489
+ /**
1490
+ * User ID
1491
+ */
1492
+ 'userId': string;
1493
+ /**
1494
+ * Created at
1495
+ */
1496
+ 'createdAt': string;
1497
+ }
1498
+
1499
+ /**
1500
+ * Kadoa API
1501
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1502
+ *
1503
+ * The version of the OpenAPI document: 3.0.0
1504
+ * Contact: support@kadoa.com
1505
+ *
1506
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1507
+ * https://openapi-generator.tech
1508
+ * Do not edit the class manually.
1509
+ */
1510
+ interface CreateRuleParameters {
1511
+ 'sql'?: string;
1512
+ 'params'?: Array<any | null>;
1513
+ }
1514
+
1515
+ /**
1516
+ * Kadoa API
1517
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1518
+ *
1519
+ * The version of the OpenAPI document: 3.0.0
1520
+ * Contact: support@kadoa.com
1521
+ *
1522
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1523
+ * https://openapi-generator.tech
1524
+ * Do not edit the class manually.
1525
+ */
1526
+
1527
+ /**
1528
+ * Request body for creating a new validation rule
1529
+ */
1530
+ interface CreateRule {
1531
+ 'name': string;
1532
+ 'description'?: string;
1533
+ 'ruleType': CreateRuleRuleTypeEnum;
1534
+ 'workflowId'?: string;
1535
+ 'targetColumns'?: Array<string>;
1536
+ 'parameters': CreateRuleParameters;
1537
+ 'status'?: CreateRuleStatusEnum;
1538
+ 'metadata'?: {
1539
+ [key: string]: any | null;
1540
+ };
1541
+ }
1542
+ declare const CreateRuleRuleTypeEnum: {
1543
+ readonly CustomSql: "custom_sql";
1544
+ };
1545
+ type CreateRuleRuleTypeEnum = typeof CreateRuleRuleTypeEnum[keyof typeof CreateRuleRuleTypeEnum];
1546
+ declare const CreateRuleStatusEnum: {
1547
+ readonly Preview: "preview";
1548
+ readonly Enabled: "enabled";
1549
+ readonly Disabled: "disabled";
1550
+ };
1551
+ type CreateRuleStatusEnum = typeof CreateRuleStatusEnum[keyof typeof CreateRuleStatusEnum];
1552
+
1553
+ /**
1554
+ * Kadoa API
1555
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1556
+ *
1557
+ * The version of the OpenAPI document: 3.0.0
1558
+ * Contact: support@kadoa.com
1559
+ *
1560
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1561
+ * https://openapi-generator.tech
1562
+ * Do not edit the class manually.
1563
+ */
1564
+
1565
+ /**
1566
+ * Request body for creating a new schema
1567
+ */
1568
+ interface CreateSchemaBody {
1569
+ /**
1570
+ * Name of the schema
1571
+ */
1572
+ 'name': string;
1573
+ /**
1574
+ * Entity type for the schema
1575
+ */
1576
+ 'entity'?: string;
1577
+ /**
1578
+ * Schema fields for extraction - choose from Data Field (typed data), Raw Content Field (HTML/Markdown), or Classification Field (predefined categories)
1579
+ */
1580
+ 'fields': Array<SchemaResponseSchemaInner>;
1581
+ }
1582
+
1583
+ /**
1584
+ * Kadoa API
1585
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1586
+ *
1587
+ * The version of the OpenAPI document: 3.0.0
1588
+ * Contact: support@kadoa.com
1589
+ *
1590
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1591
+ * https://openapi-generator.tech
1592
+ * Do not edit the class manually.
1593
+ */
1594
+
1595
+ /**
1596
+ * Create a workflow by defining extraction entity and fields directly in the request. Inline your schema definition to quickly set up custom data extraction without creating a schema separately. Example: `{\"urls\": [\"https://example.com\"], \"entity\": \"Product\", \"fields\": [{\"name\": \"title\", \"description\": \"Product title\", \"fieldType\": \"SCHEMA\", \"dataType\": \"STRING\"}, {\"name\": \"price\", \"description\": \"Product price\", \"fieldType\": \"SCHEMA\", \"dataType\": \"NUMBER\"}]}`
1597
+ */
1598
+ interface WorkflowWithEntityAndFields {
1599
+ /**
1600
+ * List of URLs to scrape. Can be a single URL or multiple URLs to scrape across different pages or domains.
1601
+ */
1602
+ 'urls': Array<string>;
1603
+ /**
1604
+ * Navigation mode for scraping
1605
+ */
1606
+ 'navigationMode'?: WorkflowWithEntityAndFieldsNavigationModeEnum;
1607
+ /**
1608
+ * Human-readable name for this workflow (e.g., \'Product Catalog Scraper\')
1609
+ */
1610
+ 'name'?: string;
1611
+ /**
1612
+ * Detailed description of what this workflow does and why it was created (maximum 500 characters)
1613
+ */
1614
+ 'description'?: string;
1615
+ /**
1616
+ * Tags for organizing and categorizing workflows (minimum 3 characters per tag)
1617
+ */
1618
+ 'tags'?: Array<string>;
1619
+ /**
1620
+ * Maximum number of items to scrape. Useful for limiting scope during development or cost control
1621
+ */
1622
+ 'limit'?: number;
1623
+ 'location'?: Location;
1624
+ 'monitoring'?: MonitoringConfig;
1625
+ /**
1626
+ * How frequently this workflow should run (ONLY_ONCE, HOURLY, DAILY, WEEKLY, etc.)
1627
+ */
1628
+ 'interval'?: WorkflowWithEntityAndFieldsIntervalEnum;
1629
+ /**
1630
+ * Cron expressions for custom schedules. Overrides the interval setting for fine-grained control
1631
+ */
1632
+ 'schedules'?: Array<string>;
1633
+ /**
1634
+ * Skip preview and validation, deploy scraper immediately. Use with caution - set to true only when you\'re confident the configuration is correct
1635
+ */
1636
+ 'bypassPreview'?: boolean;
1637
+ /**
1638
+ * Automatically start the workflow after creation. Set to false if you want to test/review before starting
1639
+ */
1640
+ 'autoStart'?: boolean;
1641
+ /**
1642
+ * Browser interactions to perform before scraping (e.g., clicking buttons, filling forms, scrolling). See Interaction schema for available action types
1643
+ */
1644
+ 'interactions'?: Array<Interaction>;
1645
+ /**
1646
+ * Enable data quality validation. When true, scraped data is validated against the schema and anomalies are detected
1647
+ */
1648
+ 'dataValidationEnabled'?: boolean;
1649
+ /**
1650
+ * Additional data for the workflow (e.g. IDs from your system to link data)
1651
+ */
1652
+ 'additionalData'?: any | null;
1653
+ /**
1654
+ * Maximum pages to crawl (default: 10,000, max: 100,000). Only used when navigationMode is \'all-pages\'
1655
+ */
1656
+ 'maxPages'?: number;
1657
+ /**
1658
+ * Maximum crawl depth (default: 50, max: 200). Only used when navigationMode is \'all-pages\'
1659
+ */
1660
+ 'maxDepth'?: number;
1661
+ /**
1662
+ * Regex patterns to include specific paths during crawling. Only used when navigationMode is \'all-pages\'
1663
+ */
1664
+ 'pathsFilterIn'?: Array<string>;
1665
+ /**
1666
+ * Regex patterns to exclude specific paths during crawling. Only used when navigationMode is \'all-pages\'
1667
+ */
1668
+ 'pathsFilterOut'?: Array<string>;
1669
+ /**
1670
+ * Entity name for extraction (e.g., \'Product\', \'JobListing\')
1671
+ */
1672
+ 'entity': string;
1673
+ /**
1674
+ * Array of fields to extract from each item. Each field defines a property to capture (e.g., title, price, description)
1675
+ */
1676
+ 'fields': Array<SchemaResponseSchemaInner>;
1677
+ }
1678
+ declare const WorkflowWithEntityAndFieldsNavigationModeEnum: {
1679
+ readonly SinglePage: "single-page";
1680
+ readonly PaginatedPage: "paginated-page";
1681
+ readonly PageAndDetail: "page-and-detail";
1682
+ readonly AgenticNavigation: "agentic-navigation";
1683
+ readonly AllPages: "all-pages";
1684
+ };
1685
+ type WorkflowWithEntityAndFieldsNavigationModeEnum = typeof WorkflowWithEntityAndFieldsNavigationModeEnum[keyof typeof WorkflowWithEntityAndFieldsNavigationModeEnum];
1686
+ declare const WorkflowWithEntityAndFieldsIntervalEnum: {
1687
+ readonly OnlyOnce: "ONLY_ONCE";
1688
+ readonly Every10Minutes: "EVERY_10_MINUTES";
1689
+ readonly HalfHourly: "HALF_HOURLY";
1690
+ readonly Hourly: "HOURLY";
1691
+ readonly ThreeHourly: "THREE_HOURLY";
1692
+ readonly SixHourly: "SIX_HOURLY";
1693
+ readonly TwelveHourly: "TWELVE_HOURLY";
1694
+ readonly EighteenHourly: "EIGHTEEN_HOURLY";
1695
+ readonly Daily: "DAILY";
1696
+ readonly TwoDay: "TWO_DAY";
1697
+ readonly ThreeDay: "THREE_DAY";
1698
+ readonly Weekly: "WEEKLY";
1699
+ readonly Biweekly: "BIWEEKLY";
1700
+ readonly Triweekly: "TRIWEEKLY";
1701
+ readonly FourWeeks: "FOUR_WEEKS";
1702
+ readonly Monthly: "MONTHLY";
1703
+ readonly RealTime: "REAL_TIME";
1704
+ readonly Custom: "CUSTOM";
1705
+ };
1706
+ type WorkflowWithEntityAndFieldsIntervalEnum = typeof WorkflowWithEntityAndFieldsIntervalEnum[keyof typeof WorkflowWithEntityAndFieldsIntervalEnum];
1707
+
1708
+ /**
1709
+ * Kadoa API
1710
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1711
+ *
1712
+ * The version of the OpenAPI document: 3.0.0
1713
+ * Contact: support@kadoa.com
1714
+ *
1715
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1716
+ * https://openapi-generator.tech
1717
+ * Do not edit the class manually.
1718
+ */
1719
+
1720
+ /**
1721
+ * Create a workflow using a pre-defined schema configuration. Reference an existing schema by ID to extract data without re-defining fields. Perfect when you have multiple workflows using the same data structure. Example: `{\"urls\": [\"https://example.com\"], \"schemaId\": \"schema-abc123\", \"interval\": \"DAILY\"}`
1722
+ */
1723
+ interface WorkflowWithExistingSchema {
1724
+ /**
1725
+ * List of URLs to scrape. Can be a single URL or multiple URLs to scrape across different pages or domains.
1726
+ */
1727
+ 'urls': Array<string>;
1728
+ /**
1729
+ * Navigation mode for scraping
1730
+ */
1731
+ 'navigationMode'?: WorkflowWithExistingSchemaNavigationModeEnum;
1732
+ /**
1733
+ * Human-readable name for this workflow (e.g., \'Product Catalog Scraper\')
1734
+ */
1735
+ 'name'?: string;
1736
+ /**
1737
+ * Detailed description of what this workflow does and why it was created (maximum 500 characters)
1738
+ */
1739
+ 'description'?: string;
1740
+ /**
1741
+ * Tags for organizing and categorizing workflows (minimum 3 characters per tag)
1742
+ */
1743
+ 'tags'?: Array<string>;
1744
+ /**
1745
+ * Maximum number of items to scrape. Useful for limiting scope during development or cost control
1746
+ */
1747
+ 'limit'?: number;
1748
+ 'location'?: Location;
1749
+ 'monitoring'?: MonitoringConfig;
1750
+ /**
1751
+ * How frequently this workflow should run (ONLY_ONCE, HOURLY, DAILY, WEEKLY, etc.)
1752
+ */
1753
+ 'interval'?: WorkflowWithExistingSchemaIntervalEnum;
1754
+ /**
1755
+ * Cron expressions for custom schedules. Overrides the interval setting for fine-grained control
1756
+ */
1757
+ 'schedules'?: Array<string>;
1758
+ /**
1759
+ * Skip preview and validation, deploy scraper immediately. Use with caution - set to true only when you\'re confident the configuration is correct
1760
+ */
1761
+ 'bypassPreview'?: boolean;
1762
+ /**
1763
+ * Automatically start the workflow after creation. Set to false if you want to test/review before starting
1764
+ */
1765
+ 'autoStart'?: boolean;
1766
+ /**
1767
+ * Browser interactions to perform before scraping (e.g., clicking buttons, filling forms, scrolling). See Interaction schema for available action types
1768
+ */
1769
+ 'interactions'?: Array<Interaction>;
1770
+ /**
1771
+ * Enable data quality validation. When true, scraped data is validated against the schema and anomalies are detected
1772
+ */
1773
+ 'dataValidationEnabled'?: boolean;
1774
+ /**
1775
+ * Additional data for the workflow (e.g. IDs from your system to link data)
1776
+ */
1777
+ 'additionalData'?: any | null;
1778
+ /**
1779
+ * Maximum pages to crawl (default: 10,000, max: 100,000). Only used when navigationMode is \'all-pages\'
1780
+ */
1781
+ 'maxPages'?: number;
1782
+ /**
1783
+ * Maximum crawl depth (default: 50, max: 200). Only used when navigationMode is \'all-pages\'
1784
+ */
1785
+ 'maxDepth'?: number;
1786
+ /**
1787
+ * Regex patterns to include specific paths during crawling. Only used when navigationMode is \'all-pages\'
1788
+ */
1789
+ 'pathsFilterIn'?: Array<string>;
1790
+ /**
1791
+ * Regex patterns to exclude specific paths during crawling. Only used when navigationMode is \'all-pages\'
1792
+ */
1793
+ 'pathsFilterOut'?: Array<string>;
1794
+ /**
1795
+ * ID of an existing schema configuration. Use this to reference a previously defined schema without re-defining extraction fields
1796
+ */
1797
+ 'schemaId': string;
1798
+ }
1799
+ declare const WorkflowWithExistingSchemaNavigationModeEnum: {
1800
+ readonly SinglePage: "single-page";
1801
+ readonly PaginatedPage: "paginated-page";
1802
+ readonly PageAndDetail: "page-and-detail";
1803
+ readonly AgenticNavigation: "agentic-navigation";
1804
+ readonly AllPages: "all-pages";
1330
1805
  };
1331
1806
  type WorkflowWithExistingSchemaNavigationModeEnum = typeof WorkflowWithExistingSchemaNavigationModeEnum[keyof typeof WorkflowWithExistingSchemaNavigationModeEnum];
1332
1807
  declare const WorkflowWithExistingSchemaIntervalEnum: {
@@ -1364,10 +1839,113 @@ type WorkflowWithExistingSchemaIntervalEnum = typeof WorkflowWithExistingSchemaI
1364
1839
  */
1365
1840
 
1366
1841
  /**
1367
- * @type CreateWorkflowBody
1368
- * Request body for creating a new workflow
1842
+ * @type CreateWorkflowBody
1843
+ * Request body for creating a new workflow
1844
+ */
1845
+ type CreateWorkflowBody = AgenticWorkflow | WorkflowWithEntityAndFields | WorkflowWithExistingSchema;
1846
+
1847
+ /**
1848
+ * Kadoa API
1849
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1850
+ *
1851
+ * The version of the OpenAPI document: 3.0.0
1852
+ * Contact: support@kadoa.com
1853
+ *
1854
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1855
+ * https://openapi-generator.tech
1856
+ * Do not edit the class manually.
1857
+ */
1858
+ /**
1859
+ * Response for workflow creation
1860
+ */
1861
+ interface CreateWorkflowResponse {
1862
+ /**
1863
+ * Error flag (always false on success)
1864
+ */
1865
+ 'error': boolean;
1866
+ /**
1867
+ * Success flag
1868
+ */
1869
+ 'success': boolean;
1870
+ /**
1871
+ * ID of the created workflow
1872
+ */
1873
+ 'workflowId': string;
1874
+ /**
1875
+ * Success message
1876
+ */
1877
+ 'message': string;
1878
+ }
1879
+
1880
+ /**
1881
+ * Kadoa API
1882
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1883
+ *
1884
+ * The version of the OpenAPI document: 3.0.0
1885
+ * Contact: support@kadoa.com
1886
+ *
1887
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1888
+ * https://openapi-generator.tech
1889
+ * Do not edit the class manually.
1890
+ */
1891
+ /**
1892
+ * Comparison results between expected and actual data schema
1893
+ */
1894
+ interface SchemaValidationResult {
1895
+ 'missingColumns': Array<string>;
1896
+ 'missingRequiredColumns': Array<string>;
1897
+ 'extraColumns': Array<string>;
1898
+ }
1899
+
1900
+ /**
1901
+ * Kadoa API
1902
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1903
+ *
1904
+ * The version of the OpenAPI document: 3.0.0
1905
+ * Contact: support@kadoa.com
1906
+ *
1907
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1908
+ * https://openapi-generator.tech
1909
+ * Do not edit the class manually.
1910
+ */
1911
+ /**
1912
+ * @type ValidationCompletedAt
1913
+ */
1914
+ type ValidationCompletedAt = string;
1915
+
1916
+ /**
1917
+ * Kadoa API
1918
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1919
+ *
1920
+ * The version of the OpenAPI document: 3.0.0
1921
+ * Contact: support@kadoa.com
1922
+ *
1923
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1924
+ * https://openapi-generator.tech
1925
+ * Do not edit the class manually.
1926
+ */
1927
+ /**
1928
+ * @type ValidationCreatedAt
1929
+ */
1930
+ type ValidationCreatedAt = string;
1931
+
1932
+ /**
1933
+ * Kadoa API
1934
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1935
+ *
1936
+ * The version of the OpenAPI document: 3.0.0
1937
+ * Contact: support@kadoa.com
1938
+ *
1939
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1940
+ * https://openapi-generator.tech
1941
+ * Do not edit the class manually.
1369
1942
  */
1370
- type CreateWorkflowBody = AgenticWorkflow | WorkflowWithEntityAndFields | WorkflowWithExistingSchema;
1943
+ /**
1944
+ * Optional parameters for the rule execution
1945
+ */
1946
+ interface DynamicRuleConfigParameters {
1947
+ 'sql'?: string;
1948
+ }
1371
1949
 
1372
1950
  /**
1373
1951
  * Kadoa API
@@ -1380,26 +1958,189 @@ type CreateWorkflowBody = AgenticWorkflow | WorkflowWithEntityAndFields | Workfl
1380
1958
  * https://openapi-generator.tech
1381
1959
  * Do not edit the class manually.
1382
1960
  */
1961
+
1383
1962
  /**
1384
- * Response for workflow creation
1963
+ * Configuration for custom SQL validation rules with optional parameters
1385
1964
  */
1386
- interface CreateWorkflowResponse {
1965
+ interface DynamicRuleConfig {
1387
1966
  /**
1388
- * Error flag (always false on success)
1967
+ * Rule name
1389
1968
  */
1390
- 'error': boolean;
1969
+ 'name': string;
1391
1970
  /**
1392
- * Success flag
1971
+ * What the rule checks for
1393
1972
  */
1394
- 'success': boolean;
1973
+ 'description': string;
1395
1974
  /**
1396
- * ID of the created workflow
1975
+ * Execution type for dynamic rules
1976
+ */
1977
+ 'ruleType': DynamicRuleConfigRuleTypeEnum;
1978
+ /**
1979
+ * Columns to which the rule applies
1980
+ */
1981
+ 'targetColumns'?: Array<string>;
1982
+ 'parameters': DynamicRuleConfigParameters;
1983
+ }
1984
+ declare const DynamicRuleConfigRuleTypeEnum: {
1985
+ readonly CustomSql: "custom_sql";
1986
+ };
1987
+ type DynamicRuleConfigRuleTypeEnum = typeof DynamicRuleConfigRuleTypeEnum[keyof typeof DynamicRuleConfigRuleTypeEnum];
1988
+
1989
+ /**
1990
+ * Kadoa API
1991
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1992
+ *
1993
+ * The version of the OpenAPI document: 3.0.0
1994
+ * Contact: support@kadoa.com
1995
+ *
1996
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1997
+ * https://openapi-generator.tech
1998
+ * Do not edit the class manually.
1999
+ */
2000
+ interface ValidationMetadataInvalidRulesInner {
2001
+ 'name': string;
2002
+ 'error': string;
2003
+ }
2004
+
2005
+ /**
2006
+ * Kadoa API
2007
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2008
+ *
2009
+ * The version of the OpenAPI document: 3.0.0
2010
+ * Contact: support@kadoa.com
2011
+ *
2012
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2013
+ * https://openapi-generator.tech
2014
+ * Do not edit the class manually.
2015
+ */
2016
+ /**
2017
+ * Subset of library rule fields needed for job processing
2018
+ */
2019
+ interface ValidationMetadataLibraryRulesInner {
2020
+ /**
2021
+ * Rule identifier
2022
+ */
2023
+ 'id': string;
2024
+ /**
2025
+ * Rule name
2026
+ */
2027
+ 'name': string;
2028
+ 'description'?: string;
2029
+ /**
2030
+ * Pre-configured parameters for the library rule
2031
+ */
2032
+ 'parameters'?: {
2033
+ [key: string]: any | null;
2034
+ };
2035
+ 'targetColumns'?: Array<string>;
2036
+ }
2037
+
2038
+ /**
2039
+ * Kadoa API
2040
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2041
+ *
2042
+ * The version of the OpenAPI document: 3.0.0
2043
+ * Contact: support@kadoa.com
2044
+ *
2045
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2046
+ * https://openapi-generator.tech
2047
+ * Do not edit the class manually.
2048
+ */
2049
+
2050
+ interface ValidationMetadata {
2051
+ 'customRules': Array<DynamicRuleConfig>;
2052
+ 'libraryRules': Array<ValidationMetadataLibraryRulesInner>;
2053
+ 'totalRulesExecuted': number;
2054
+ 'usedPrompt'?: string;
2055
+ 'invalidRules'?: Array<ValidationMetadataInvalidRulesInner>;
2056
+ 'recordsValidated': number;
2057
+ }
2058
+
2059
+ /**
2060
+ * Kadoa API
2061
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2062
+ *
2063
+ * The version of the OpenAPI document: 3.0.0
2064
+ * Contact: support@kadoa.com
2065
+ *
2066
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2067
+ * https://openapi-generator.tech
2068
+ * Do not edit the class manually.
2069
+ */
2070
+
2071
+ /**
2072
+ * Complete validation report including summary fields, anomaly details by rule, dataset location details, CDC summary, and execution strategy
2073
+ */
2074
+ interface DataValidationReport {
2075
+ /**
2076
+ * Unique identifier
1397
2077
  */
2078
+ 'id': string;
1398
2079
  'workflowId': string;
2080
+ 'jobId': string;
2081
+ 'anomaliesCountTotal': number;
2082
+ 'anomaliesCountByRule': {
2083
+ [key: string]: number;
2084
+ };
2085
+ 'createdAt': ValidationCreatedAt;
2086
+ 'updatedAt': ValidationCreatedAt;
2087
+ 'completedAt'?: ValidationCompletedAt | null;
2088
+ 'metadata'?: ValidationMetadata;
2089
+ 'error'?: string;
2090
+ 'isDryRun'?: boolean;
2091
+ 'isWorkflowTriggered'?: boolean;
2092
+ 'datasetUri'?: string | null;
2093
+ 'anomaliesParquetPath'?: string | null;
1399
2094
  /**
1400
- * Success message
2095
+ * ISOLATED validates each dataset independently. LINKING_COLUMNS validates data integrity across linked columns between datasets.
1401
2096
  */
2097
+ 'strategy'?: DataValidationReportStrategyEnum;
2098
+ 'anomaliesByRule': Array<AnomalyRuleData>;
2099
+ 'cdc'?: ChangeDetectionResult;
2100
+ 'schemaIssues': SchemaValidationResult;
2101
+ }
2102
+ declare const DataValidationReportStrategyEnum: {
2103
+ readonly Isolated: "ISOLATED";
2104
+ readonly LinkingColumns: "LINKING_COLUMNS";
2105
+ };
2106
+ type DataValidationReportStrategyEnum = typeof DataValidationReportStrategyEnum[keyof typeof DataValidationReportStrategyEnum];
2107
+
2108
+ /**
2109
+ * Kadoa API
2110
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2111
+ *
2112
+ * The version of the OpenAPI document: 3.0.0
2113
+ * Contact: support@kadoa.com
2114
+ *
2115
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2116
+ * https://openapi-generator.tech
2117
+ * Do not edit the class manually.
2118
+ */
2119
+ interface DeleteAllRulesResponseData$1 {
2120
+ 'deletedCount': number;
2121
+ 'workflowId'?: string;
2122
+ 'deletedRuleIds': Array<string>;
2123
+ }
2124
+
2125
+ /**
2126
+ * Kadoa API
2127
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2128
+ *
2129
+ * The version of the OpenAPI document: 3.0.0
2130
+ * Contact: support@kadoa.com
2131
+ *
2132
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2133
+ * https://openapi-generator.tech
2134
+ * Do not edit the class manually.
2135
+ */
2136
+
2137
+ /**
2138
+ * Summary of bulk rule deletion operation
2139
+ */
2140
+ interface DeleteAllRulesResponse {
2141
+ 'error': boolean;
1402
2142
  'message': string;
2143
+ 'data': DeleteAllRulesResponseData$1;
1403
2144
  }
1404
2145
 
1405
2146
  /**
@@ -1414,12 +2155,17 @@ interface CreateWorkflowResponse {
1414
2155
  * Do not edit the class manually.
1415
2156
  */
1416
2157
  /**
1417
- * Comparison results between expected and actual data schema
2158
+ * Response schema for deleting a crawling configuration
1418
2159
  */
1419
- interface SchemaValidationResult {
1420
- 'missingColumns': Array<string>;
1421
- 'missingRequiredColumns': Array<string>;
1422
- 'extraColumns': Array<string>;
2160
+ interface DeleteCrawlerConfigResponse {
2161
+ /**
2162
+ * Config ID
2163
+ */
2164
+ 'configId': string;
2165
+ /**
2166
+ * Whether the config was deleted
2167
+ */
2168
+ 'deleted': boolean;
1423
2169
  }
1424
2170
 
1425
2171
  /**
@@ -1434,9 +2180,52 @@ interface SchemaValidationResult {
1434
2180
  * Do not edit the class manually.
1435
2181
  */
1436
2182
  /**
1437
- * @type ValidationCompletedAt
2183
+ * Soft delete request with optional reason for audit trail
1438
2184
  */
1439
- type ValidationCompletedAt = string;
2185
+ interface DeleteRuleWithReason {
2186
+ 'workflowId': string;
2187
+ 'reason'?: string;
2188
+ }
2189
+
2190
+ /**
2191
+ * Kadoa API
2192
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2193
+ *
2194
+ * The version of the OpenAPI document: 3.0.0
2195
+ * Contact: support@kadoa.com
2196
+ *
2197
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2198
+ * https://openapi-generator.tech
2199
+ * Do not edit the class manually.
2200
+ */
2201
+ /**
2202
+ * Request to deactivate a rule with mandatory reason
2203
+ */
2204
+ interface DisableRule {
2205
+ 'reason': string;
2206
+ }
2207
+
2208
+ /**
2209
+ * Kadoa API
2210
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2211
+ *
2212
+ * The version of the OpenAPI document: 3.0.0
2213
+ * Contact: support@kadoa.com
2214
+ *
2215
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2216
+ * https://openapi-generator.tech
2217
+ * Do not edit the class manually.
2218
+ */
2219
+ interface EmailChannelConfig {
2220
+ /**
2221
+ * Array of recipient email addresses
2222
+ */
2223
+ 'recipients': Array<string>;
2224
+ /**
2225
+ * Sender email address (optional, must be a @kadoa.com domain email)
2226
+ */
2227
+ 'from'?: string;
2228
+ }
1440
2229
 
1441
2230
  /**
1442
2231
  * Kadoa API
@@ -1450,9 +2239,15 @@ type ValidationCompletedAt = string;
1450
2239
  * Do not edit the class manually.
1451
2240
  */
1452
2241
  /**
1453
- * @type ValidationCreatedAt
2242
+ * Rule generation request with user description
1454
2243
  */
1455
- type ValidationCreatedAt = string;
2244
+ interface GenerateRule {
2245
+ 'jobId'?: string;
2246
+ 'userPrompt': string;
2247
+ 'selectedColumns'?: Array<string>;
2248
+ 'workflowId': string;
2249
+ 'isPreviewRun'?: boolean;
2250
+ }
1456
2251
 
1457
2252
  /**
1458
2253
  * Kadoa API
@@ -1465,11 +2260,10 @@ type ValidationCreatedAt = string;
1465
2260
  * https://openapi-generator.tech
1466
2261
  * Do not edit the class manually.
1467
2262
  */
1468
- /**
1469
- * Optional parameters for the rule execution
1470
- */
1471
- interface DynamicRuleConfigParameters {
1472
- 'sql'?: string;
2263
+ interface RuleParameters {
2264
+ 'sql': string;
2265
+ 'params'?: Array<any | null>;
2266
+ 'prompt'?: string;
1473
2267
  }
1474
2268
 
1475
2269
  /**
@@ -1485,31 +2279,54 @@ interface DynamicRuleConfigParameters {
1485
2279
  */
1486
2280
 
1487
2281
  /**
1488
- * Configuration for custom SQL validation rules with optional parameters
2282
+ * Complete validation rule with metadata and lifecycle information
1489
2283
  */
1490
- interface DynamicRuleConfig {
2284
+ interface Rule$1 {
1491
2285
  /**
1492
- * Rule name
2286
+ * Unique identifier
2287
+ */
2288
+ 'id': string;
2289
+ /**
2290
+ * Human-readable rule name
1493
2291
  */
1494
2292
  'name': string;
2293
+ 'description'?: string;
2294
+ 'ruleType'?: RuleRuleTypeEnum;
2295
+ 'workflowId'?: string;
2296
+ 'groupId'?: string;
2297
+ 'userId'?: string;
2298
+ 'teamId'?: string;
2299
+ 'targetColumns'?: Array<string>;
2300
+ 'parameters'?: RuleParameters;
2301
+ 'status': RuleStatusEnum;
2302
+ 'disabledReason'?: string | null;
2303
+ 'metadata'?: {
2304
+ [key: string]: any | null;
2305
+ };
1495
2306
  /**
1496
- * What the rule checks for
2307
+ * ISO 8601 timestamp
1497
2308
  */
1498
- 'description': string;
2309
+ 'createdAt': string;
1499
2310
  /**
1500
- * Execution type for dynamic rules
2311
+ * ISO 8601 timestamp
1501
2312
  */
1502
- 'ruleType': DynamicRuleConfigRuleTypeEnum;
2313
+ 'updatedAt': string;
1503
2314
  /**
1504
- * Columns to which the rule applies
2315
+ * ISO 8601 timestamp
1505
2316
  */
1506
- 'targetColumns'?: Array<string>;
1507
- 'parameters': DynamicRuleConfigParameters;
2317
+ 'deletedAt'?: string | null;
2318
+ 'deletedReason'?: string | null;
1508
2319
  }
1509
- declare const DynamicRuleConfigRuleTypeEnum: {
2320
+ declare const RuleRuleTypeEnum: {
1510
2321
  readonly CustomSql: "custom_sql";
1511
2322
  };
1512
- type DynamicRuleConfigRuleTypeEnum = typeof DynamicRuleConfigRuleTypeEnum[keyof typeof DynamicRuleConfigRuleTypeEnum];
2323
+ type RuleRuleTypeEnum = typeof RuleRuleTypeEnum[keyof typeof RuleRuleTypeEnum];
2324
+ declare const RuleStatusEnum: {
2325
+ readonly Preview: "preview";
2326
+ readonly Enabled: "enabled";
2327
+ readonly Disabled: "disabled";
2328
+ };
2329
+ type RuleStatusEnum = typeof RuleStatusEnum[keyof typeof RuleStatusEnum];
1513
2330
 
1514
2331
  /**
1515
2332
  * Kadoa API
@@ -1522,9 +2339,15 @@ type DynamicRuleConfigRuleTypeEnum = typeof DynamicRuleConfigRuleTypeEnum[keyof
1522
2339
  * https://openapi-generator.tech
1523
2340
  * Do not edit the class manually.
1524
2341
  */
1525
- interface ValidationMetadataInvalidRulesInner {
1526
- 'name': string;
1527
- 'error': string;
2342
+ /**
2343
+ * Request for validation rules based on data analysis
2344
+ */
2345
+ interface GenerateRules {
2346
+ 'jobId'?: string;
2347
+ 'maxRules'?: number;
2348
+ 'workflowId': string;
2349
+ 'isPreviewRun'?: boolean;
2350
+ 'prompt'?: string;
1528
2351
  }
1529
2352
 
1530
2353
  /**
@@ -1538,26 +2361,99 @@ interface ValidationMetadataInvalidRulesInner {
1538
2361
  * https://openapi-generator.tech
1539
2362
  * Do not edit the class manually.
1540
2363
  */
2364
+
1541
2365
  /**
1542
- * Subset of library rule fields needed for job processing
2366
+ * Response schema for getting a crawling configuration
1543
2367
  */
1544
- interface ValidationMetadataLibraryRulesInner {
2368
+ interface GetCrawlerConfigResponse {
1545
2369
  /**
1546
- * Rule identifier
2370
+ * Single URL to start crawling (for backward compatibility)
1547
2371
  */
1548
- 'id': string;
2372
+ 'url'?: string;
1549
2373
  /**
1550
- * Rule name
2374
+ * List of URLs for crawling
1551
2375
  */
1552
- 'name': string;
1553
- 'description'?: string;
2376
+ 'startUrls'?: Array<string>;
1554
2377
  /**
1555
- * Pre-configured parameters for the library rule
2378
+ * Regex patterns to include specific paths
1556
2379
  */
1557
- 'parameters'?: {
1558
- [key: string]: any | null;
1559
- };
1560
- 'targetColumns'?: Array<string>;
2380
+ 'pathsFilterIn'?: Array<string>;
2381
+ /**
2382
+ * Regex patterns to exclude specific paths
2383
+ */
2384
+ 'pathsFilterOut'?: Array<string>;
2385
+ /**
2386
+ * Type of proxy to use
2387
+ */
2388
+ 'proxyType'?: string | null;
2389
+ /**
2390
+ * Country for proxy selection
2391
+ */
2392
+ 'proxyCountry'?: string | null;
2393
+ /**
2394
+ * Timeout in milliseconds
2395
+ */
2396
+ 'timeout'?: number;
2397
+ /**
2398
+ * Maximum crawling depth
2399
+ */
2400
+ 'maxDepth'?: number;
2401
+ /**
2402
+ * Maximum number of pages to crawl
2403
+ */
2404
+ 'maxPages'?: number;
2405
+ /**
2406
+ * Maximum number of matched pages to crawl before stopping
2407
+ */
2408
+ 'maxMatches'?: number;
2409
+ /**
2410
+ * Number of concurrent crawlers
2411
+ */
2412
+ 'concurrency'?: number;
2413
+ /**
2414
+ * Whether to stay within the same domain
2415
+ */
2416
+ 'strictDomain'?: boolean;
2417
+ /**
2418
+ * Whether to load images during crawling
2419
+ */
2420
+ 'loadImages'?: boolean;
2421
+ /**
2422
+ * Enable safe mode for crawling
2423
+ */
2424
+ 'safeMode'?: boolean;
2425
+ /**
2426
+ * Webhook URL for completion notifications
2427
+ */
2428
+ 'callbackUrl'?: string | null;
2429
+ /**
2430
+ * Whether to run preprocessing and extraction during the crawl phase
2431
+ */
2432
+ 'processDuringCrawl'?: boolean;
2433
+ 'crawlMethod'?: CreateCrawlerConfigRequestCrawlMethod;
2434
+ /**
2435
+ * Match threshold override for blueprint filtering
2436
+ */
2437
+ 'matchThreshold'?: number;
2438
+ /**
2439
+ * Blueprint fields applied during crawling
2440
+ */
2441
+ 'blueprint'?: Array<CreateCrawlerConfigRequestBlueprintInner>;
2442
+ 'extractionOptions'?: CreateCrawlerConfigRequestExtractionOptions;
2443
+ 'navigationOptions'?: CreateCrawlerConfigRequestNavigationOptions;
2444
+ 'artifactOptions'?: CreateCrawlerConfigRequestArtifactOptions;
2445
+ /**
2446
+ * Config ID
2447
+ */
2448
+ 'configId': string;
2449
+ /**
2450
+ * User ID
2451
+ */
2452
+ 'userId': string;
2453
+ /**
2454
+ * Created at
2455
+ */
2456
+ 'createdAt': string;
1561
2457
  }
1562
2458
 
1563
2459
  /**
@@ -1571,14 +2467,51 @@ interface ValidationMetadataLibraryRulesInner {
1571
2467
  * https://openapi-generator.tech
1572
2468
  * Do not edit the class manually.
1573
2469
  */
1574
-
1575
- interface ValidationMetadata {
1576
- 'customRules': Array<DynamicRuleConfig>;
1577
- 'libraryRules': Array<ValidationMetadataLibraryRulesInner>;
1578
- 'totalRulesExecuted': number;
1579
- 'usedPrompt'?: string;
1580
- 'invalidRules'?: Array<ValidationMetadataInvalidRulesInner>;
1581
- 'recordsValidated': number;
2470
+ interface GetCrawlerSessionDataListResponseDataInner {
2471
+ /**
2472
+ * URL of the page
2473
+ */
2474
+ 'url': string;
2475
+ /**
2476
+ * Status of the page
2477
+ */
2478
+ 'status': string;
2479
+ /**
2480
+ * Timestamp when the entry was created
2481
+ */
2482
+ 'created_at': string;
2483
+ /**
2484
+ * Base64 encoded filename for the HTML content (null when HTML not stored)
2485
+ */
2486
+ 'html_filename': string | null;
2487
+ /**
2488
+ * Base64 encoded filename for the screenshot (null when screenshot not available)
2489
+ */
2490
+ 'screenshot_filename': string | null;
2491
+ /**
2492
+ * Base64 encoded filename for the processed Kadoa HTML
2493
+ */
2494
+ 'processed_html_filename': string | null;
2495
+ /**
2496
+ * Base64 encoded filename for the crawler result JSON
2497
+ */
2498
+ 'json_filename': string | null;
2499
+ /**
2500
+ * Match score between 0 and 1 (null when blueprint not provided)
2501
+ */
2502
+ 'match_score': number | null;
2503
+ /**
2504
+ * Number of blueprint fields populated for the page
2505
+ */
2506
+ 'matched_fields': number | null;
2507
+ /**
2508
+ * Total blueprint fields evaluated for matching
2509
+ */
2510
+ 'total_fields': number | null;
2511
+ /**
2512
+ * Whether the page met the blueprint match threshold
2513
+ */
2514
+ 'is_match': boolean;
1582
2515
  }
1583
2516
 
1584
2517
  /**
@@ -1594,57 +2527,17 @@ interface ValidationMetadata {
1594
2527
  */
1595
2528
 
1596
2529
  /**
1597
- * Complete validation report including summary fields, anomaly details by rule, dataset location details, CDC summary, and execution strategy
2530
+ * Response schema for getting a crawling session data list
1598
2531
  */
1599
- interface DataValidationReport {
2532
+ interface GetCrawlerSessionDataListResponse {
1600
2533
  /**
1601
- * Unique identifier
2534
+ * Total number of pages in the session
1602
2535
  */
1603
- 'id': string;
1604
- 'workflowId': string;
1605
- 'jobId': string;
1606
- 'anomaliesCountTotal': number;
1607
- 'anomaliesCountByRule': {
1608
- [key: string]: number;
1609
- };
1610
- 'createdAt': ValidationCreatedAt;
1611
- 'updatedAt': ValidationCreatedAt;
1612
- 'completedAt'?: ValidationCompletedAt | null;
1613
- 'metadata'?: ValidationMetadata;
1614
- 'error'?: string;
1615
- 'isDryRun'?: boolean;
1616
- 'isWorkflowTriggered'?: boolean;
1617
- 'datasetUri'?: string | null;
1618
- 'anomaliesParquetPath'?: string | null;
2536
+ 'totalPages': number;
1619
2537
  /**
1620
- * ISOLATED validates each dataset independently. LINKING_COLUMNS validates data integrity across linked columns between datasets.
2538
+ * List of pages in the session
1621
2539
  */
1622
- 'strategy'?: DataValidationReportStrategyEnum;
1623
- 'anomaliesByRule': Array<AnomalyRuleData>;
1624
- 'cdc'?: ChangeDetectionResult;
1625
- 'schemaIssues': SchemaValidationResult;
1626
- }
1627
- declare const DataValidationReportStrategyEnum: {
1628
- readonly Isolated: "ISOLATED";
1629
- readonly LinkingColumns: "LINKING_COLUMNS";
1630
- };
1631
- type DataValidationReportStrategyEnum = typeof DataValidationReportStrategyEnum[keyof typeof DataValidationReportStrategyEnum];
1632
-
1633
- /**
1634
- * Kadoa API
1635
- * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1636
- *
1637
- * The version of the OpenAPI document: 3.0.0
1638
- * Contact: support@kadoa.com
1639
- *
1640
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1641
- * https://openapi-generator.tech
1642
- * Do not edit the class manually.
1643
- */
1644
- interface DeleteAllRulesResponseData$1 {
1645
- 'deletedCount': number;
1646
- 'workflowId'?: string;
1647
- 'deletedRuleIds': Array<string>;
2540
+ 'data': Array<GetCrawlerSessionDataListResponseDataInner>;
1648
2541
  }
1649
2542
 
1650
2543
  /**
@@ -1658,14 +2551,30 @@ interface DeleteAllRulesResponseData$1 {
1658
2551
  * https://openapi-generator.tech
1659
2552
  * Do not edit the class manually.
1660
2553
  */
1661
-
1662
2554
  /**
1663
- * Summary of bulk rule deletion operation
2555
+ * Response schema for getting a specific session page content
1664
2556
  */
1665
- interface DeleteAllRulesResponse {
1666
- 'error': boolean;
1667
- 'message': string;
1668
- 'data': DeleteAllRulesResponseData$1;
2557
+ interface GetCrawlerSessionPageResponse {
2558
+ /**
2559
+ * Data associated with the specific page
2560
+ */
2561
+ 'payload'?: any | null;
2562
+ /**
2563
+ * Unique ID of the page
2564
+ */
2565
+ 'pageId': string;
2566
+ /**
2567
+ * Format of the retrieved page data
2568
+ */
2569
+ 'pageFormat': string;
2570
+ /**
2571
+ * Session ID
2572
+ */
2573
+ 'sessionId': string;
2574
+ /**
2575
+ * Error message if any
2576
+ */
2577
+ 'error': string | null;
1669
2578
  }
1670
2579
 
1671
2580
  /**
@@ -1680,11 +2589,29 @@ interface DeleteAllRulesResponse {
1680
2589
  * Do not edit the class manually.
1681
2590
  */
1682
2591
  /**
1683
- * Soft delete request with optional reason for audit trail
2592
+ * Pagination details
1684
2593
  */
1685
- interface DeleteRuleWithReason {
1686
- 'workflowId': string;
1687
- 'reason'?: string;
2594
+ interface GetCrawlerSessionPagesResponsePagination {
2595
+ /**
2596
+ * Current page number
2597
+ */
2598
+ 'page': number;
2599
+ /**
2600
+ * Items per page
2601
+ */
2602
+ 'pageSize': number;
2603
+ /**
2604
+ * Total number of items
2605
+ */
2606
+ 'totalItems': number;
2607
+ /**
2608
+ * Total number of pages
2609
+ */
2610
+ 'totalPages': number;
2611
+ /**
2612
+ * Whether there are more pages
2613
+ */
2614
+ 'hasMore': boolean;
1688
2615
  }
1689
2616
 
1690
2617
  /**
@@ -1698,12 +2625,26 @@ interface DeleteRuleWithReason {
1698
2625
  * https://openapi-generator.tech
1699
2626
  * Do not edit the class manually.
1700
2627
  */
1701
- /**
1702
- * Request to deactivate a rule with mandatory reason
1703
- */
1704
- interface DisableRule {
1705
- 'reason': string;
2628
+ interface GetCrawlerSessionPagesResponsePayloadInner {
2629
+ /**
2630
+ * Unique ID of the crawled page
2631
+ */
2632
+ 'id': string;
2633
+ /**
2634
+ * URL of the crawled page
2635
+ */
2636
+ 'url': string;
2637
+ /**
2638
+ * Status of the page crawl
2639
+ */
2640
+ 'status': GetCrawlerSessionPagesResponsePayloadInnerStatusEnum;
1706
2641
  }
2642
+ declare const GetCrawlerSessionPagesResponsePayloadInnerStatusEnum: {
2643
+ readonly Done: "DONE";
2644
+ readonly Crawling: "CRAWLING";
2645
+ readonly Pending: "PENDING";
2646
+ };
2647
+ type GetCrawlerSessionPagesResponsePayloadInnerStatusEnum = typeof GetCrawlerSessionPagesResponsePayloadInnerStatusEnum[keyof typeof GetCrawlerSessionPagesResponsePayloadInnerStatusEnum];
1707
2648
 
1708
2649
  /**
1709
2650
  * Kadoa API
@@ -1716,15 +2657,24 @@ interface DisableRule {
1716
2657
  * https://openapi-generator.tech
1717
2658
  * Do not edit the class manually.
1718
2659
  */
1719
- interface EmailChannelConfig {
2660
+
2661
+ /**
2662
+ * Response schema for getting paginated session pages
2663
+ */
2664
+ interface GetCrawlerSessionPagesResponse {
1720
2665
  /**
1721
- * Array of recipient email addresses
2666
+ * List of crawled pages with statuses
1722
2667
  */
1723
- 'recipients': Array<string>;
2668
+ 'payload': Array<GetCrawlerSessionPagesResponsePayloadInner>;
2669
+ 'pagination': GetCrawlerSessionPagesResponsePagination;
1724
2670
  /**
1725
- * Sender email address (optional, must be a @kadoa.com domain email)
2671
+ * ID of the crawling session
1726
2672
  */
1727
- 'from'?: string;
2673
+ 'sessionId': string;
2674
+ /**
2675
+ * Error message if any
2676
+ */
2677
+ 'error': string | null;
1728
2678
  }
1729
2679
 
1730
2680
  /**
@@ -1739,14 +2689,21 @@ interface EmailChannelConfig {
1739
2689
  * Do not edit the class manually.
1740
2690
  */
1741
2691
  /**
1742
- * Rule generation request with user description
2692
+ * Response schema for getting a crawling session status
1743
2693
  */
1744
- interface GenerateRule {
1745
- 'jobId'?: string;
1746
- 'userPrompt': string;
1747
- 'selectedColumns'?: Array<string>;
1748
- 'workflowId': string;
1749
- 'isPreviewRun'?: boolean;
2694
+ interface GetCrawlerSessionStatusResponse {
2695
+ /**
2696
+ * Details about the crawling session status
2697
+ */
2698
+ 'payload'?: any | null;
2699
+ /**
2700
+ * Session ID
2701
+ */
2702
+ 'sessionId': string;
2703
+ /**
2704
+ * Error message if any
2705
+ */
2706
+ 'error': string | null;
1750
2707
  }
1751
2708
 
1752
2709
  /**
@@ -1760,10 +2717,32 @@ interface GenerateRule {
1760
2717
  * https://openapi-generator.tech
1761
2718
  * Do not edit the class manually.
1762
2719
  */
1763
- interface RuleParameters {
1764
- 'sql': string;
1765
- 'params'?: Array<any | null>;
1766
- 'prompt'?: string;
2720
+ /**
2721
+ * Error information for a job
2722
+ */
2723
+ interface JobError {
2724
+ /**
2725
+ * Error code identifying the type of error
2726
+ */
2727
+ 'errorCode': string;
2728
+ /**
2729
+ * Human-readable error message
2730
+ */
2731
+ 'message': string;
2732
+ /**
2733
+ * Timestamp when the error occurred
2734
+ */
2735
+ 'occurredAt': string;
2736
+ /**
2737
+ * URL to error screenshot if available
2738
+ */
2739
+ 'screenshot'?: string;
2740
+ /**
2741
+ * Additional error context
2742
+ */
2743
+ 'context'?: {
2744
+ [key: string]: any | null;
2745
+ };
1767
2746
  }
1768
2747
 
1769
2748
  /**
@@ -1779,54 +2758,81 @@ interface RuleParameters {
1779
2758
  */
1780
2759
 
1781
2760
  /**
1782
- * Complete validation rule with metadata and lifecycle information
2761
+ * Job status and telemetry response
1783
2762
  */
1784
- interface Rule$1 {
2763
+ interface JobStatusResponse {
1785
2764
  /**
1786
- * Unique identifier
2765
+ * The job ID
1787
2766
  */
1788
2767
  'id': string;
1789
2768
  /**
1790
- * Human-readable rule name
2769
+ * Current state of the job
2770
+ */
2771
+ 'state': JobStatusResponseStateEnum;
2772
+ /**
2773
+ * Start date and time of the job
2774
+ */
2775
+ 'startedAt'?: string;
2776
+ /**
2777
+ * Finish date and time of the job (if completed)
2778
+ */
2779
+ 'finishedAt'?: string;
2780
+ /**
2781
+ * Record limit for the job
2782
+ */
2783
+ 'limit'?: number | null;
2784
+ /**
2785
+ * ID of the workflow/scraper
1791
2786
  */
1792
- 'name': string;
1793
- 'description'?: string;
1794
- 'ruleType'?: RuleRuleTypeEnum;
1795
2787
  'workflowId'?: string;
1796
- 'groupId'?: string;
1797
- 'userId'?: string;
1798
- 'teamId'?: string;
1799
- 'targetColumns'?: Array<string>;
1800
- 'parameters'?: RuleParameters;
1801
- 'status': RuleStatusEnum;
1802
- 'disabledReason'?: string | null;
1803
- 'metadata'?: {
2788
+ /**
2789
+ * Job variables
2790
+ */
2791
+ 'variables'?: {
1804
2792
  [key: string]: any | null;
1805
2793
  };
1806
2794
  /**
1807
- * ISO 8601 timestamp
2795
+ * List of errors if the job failed
1808
2796
  */
1809
- 'createdAt': string;
2797
+ 'errors'?: Array<JobError>;
2798
+ }
2799
+ declare const JobStatusResponseStateEnum: {
2800
+ readonly InProgress: "IN_PROGRESS";
2801
+ readonly Finished: "FINISHED";
2802
+ readonly Failed: "FAILED";
2803
+ readonly NotSupported: "NOT_SUPPORTED";
2804
+ readonly FailedInsufficientFunds: "FAILED_INSUFFICIENT_FUNDS";
2805
+ };
2806
+ type JobStatusResponseStateEnum = typeof JobStatusResponseStateEnum[keyof typeof JobStatusResponseStateEnum];
2807
+
2808
+ /**
2809
+ * Kadoa API
2810
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2811
+ *
2812
+ * The version of the OpenAPI document: 3.0.0
2813
+ * Contact: support@kadoa.com
2814
+ *
2815
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2816
+ * https://openapi-generator.tech
2817
+ * Do not edit the class manually.
2818
+ */
2819
+ /**
2820
+ * Response schema for pausing a crawling session
2821
+ */
2822
+ interface PauseCrawlerSessionResponse {
1810
2823
  /**
1811
- * ISO 8601 timestamp
2824
+ * Response message
1812
2825
  */
1813
- 'updatedAt': string;
2826
+ 'message': string;
1814
2827
  /**
1815
- * ISO 8601 timestamp
2828
+ * Session ID
1816
2829
  */
1817
- 'deletedAt'?: string | null;
1818
- 'deletedReason'?: string | null;
2830
+ 'sessionId': string;
2831
+ /**
2832
+ * Error message if any
2833
+ */
2834
+ 'error': string | null;
1819
2835
  }
1820
- declare const RuleRuleTypeEnum: {
1821
- readonly CustomSql: "custom_sql";
1822
- };
1823
- type RuleRuleTypeEnum = typeof RuleRuleTypeEnum[keyof typeof RuleRuleTypeEnum];
1824
- declare const RuleStatusEnum: {
1825
- readonly Preview: "preview";
1826
- readonly Enabled: "enabled";
1827
- readonly Disabled: "disabled";
1828
- };
1829
- type RuleStatusEnum = typeof RuleStatusEnum[keyof typeof RuleStatusEnum];
1830
2836
 
1831
2837
  /**
1832
2838
  * Kadoa API
@@ -1840,14 +2846,21 @@ type RuleStatusEnum = typeof RuleStatusEnum[keyof typeof RuleStatusEnum];
1840
2846
  * Do not edit the class manually.
1841
2847
  */
1842
2848
  /**
1843
- * Request for validation rules based on data analysis
2849
+ * Response schema for resuming a crawling session
1844
2850
  */
1845
- interface GenerateRules {
1846
- 'jobId'?: string;
1847
- 'maxRules'?: number;
1848
- 'workflowId': string;
1849
- 'isPreviewRun'?: boolean;
1850
- 'prompt'?: string;
2851
+ interface ResumeCrawlerSessionResponse {
2852
+ /**
2853
+ * Response message
2854
+ */
2855
+ 'message': string;
2856
+ /**
2857
+ * Session ID
2858
+ */
2859
+ 'sessionId': string;
2860
+ /**
2861
+ * Error message if any
2862
+ */
2863
+ 'error': string | null;
1851
2864
  }
1852
2865
 
1853
2866
  /**
@@ -1917,9 +2930,168 @@ interface ScheduleValidationResponse {
1917
2930
  */
1918
2931
  interface SchemaResponseDescription {
1919
2932
  /**
1920
- * Hint text for the schema
2933
+ * Hint text for the schema
2934
+ */
2935
+ 'hintText': string;
2936
+ }
2937
+
2938
+ /**
2939
+ * Kadoa API
2940
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2941
+ *
2942
+ * The version of the OpenAPI document: 3.0.0
2943
+ * Contact: support@kadoa.com
2944
+ *
2945
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2946
+ * https://openapi-generator.tech
2947
+ * Do not edit the class manually.
2948
+ */
2949
+
2950
+ /**
2951
+ * Schema object response
2952
+ */
2953
+ interface SchemaResponse$1 {
2954
+ /**
2955
+ * Unique identifier for the schema
2956
+ */
2957
+ 'id': string;
2958
+ /**
2959
+ * Name of the schema
2960
+ */
2961
+ 'name': string;
2962
+ /**
2963
+ * Whether the schema is public
2964
+ */
2965
+ 'isPublic': boolean;
2966
+ /**
2967
+ * Array of field definitions
2968
+ */
2969
+ 'schema': Array<SchemaResponseSchemaInner>;
2970
+ /**
2971
+ * Entity type for the schema
2972
+ */
2973
+ 'entity': string | null;
2974
+ 'description': SchemaResponseDescription;
2975
+ }
2976
+
2977
+ /**
2978
+ * Kadoa API
2979
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2980
+ *
2981
+ * The version of the OpenAPI document: 3.0.0
2982
+ * Contact: support@kadoa.com
2983
+ *
2984
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2985
+ * https://openapi-generator.tech
2986
+ * Do not edit the class manually.
2987
+ */
2988
+ interface SlackChannelConfig {
2989
+ /**
2990
+ * Slack webhook URL (optional)
2991
+ */
2992
+ 'webhookUrl'?: string;
2993
+ /**
2994
+ * Slack channel ID
2995
+ */
2996
+ 'slackChannelId': string;
2997
+ /**
2998
+ * Slack channel name
2999
+ */
3000
+ 'slackChannelName': string;
3001
+ }
3002
+
3003
+ /**
3004
+ * Kadoa API
3005
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
3006
+ *
3007
+ * The version of the OpenAPI document: 3.0.0
3008
+ * Contact: support@kadoa.com
3009
+ *
3010
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
3011
+ * https://openapi-generator.tech
3012
+ * Do not edit the class manually.
3013
+ */
3014
+
3015
+ /**
3016
+ * Schema for starting a crawling session with support for both single URL and multiple URLs
3017
+ */
3018
+ interface StartCrawlerSessionRequest {
3019
+ /**
3020
+ * Single URL to start crawling (for backward compatibility)
3021
+ */
3022
+ 'url'?: string;
3023
+ /**
3024
+ * List of URLs for crawling
3025
+ */
3026
+ 'startUrls'?: Array<string>;
3027
+ /**
3028
+ * Regex patterns to include specific paths
3029
+ */
3030
+ 'pathsFilterIn'?: Array<string>;
3031
+ /**
3032
+ * Regex patterns to exclude specific paths
3033
+ */
3034
+ 'pathsFilterOut'?: Array<string>;
3035
+ /**
3036
+ * Type of proxy to use
3037
+ */
3038
+ 'proxyType'?: string | null;
3039
+ /**
3040
+ * Country for proxy selection
3041
+ */
3042
+ 'proxyCountry'?: string | null;
3043
+ /**
3044
+ * Timeout in milliseconds
3045
+ */
3046
+ 'timeout'?: number;
3047
+ /**
3048
+ * Maximum crawling depth
3049
+ */
3050
+ 'maxDepth'?: number;
3051
+ /**
3052
+ * Maximum number of pages to crawl
3053
+ */
3054
+ 'maxPages'?: number;
3055
+ /**
3056
+ * Maximum number of matched pages to crawl before stopping
1921
3057
  */
1922
- 'hintText': string;
3058
+ 'maxMatches'?: number;
3059
+ /**
3060
+ * Number of concurrent crawlers
3061
+ */
3062
+ 'concurrency'?: number;
3063
+ /**
3064
+ * Whether to stay within the same domain
3065
+ */
3066
+ 'strictDomain'?: boolean;
3067
+ /**
3068
+ * Whether to load images during crawling
3069
+ */
3070
+ 'loadImages'?: boolean;
3071
+ /**
3072
+ * Enable safe mode for crawling
3073
+ */
3074
+ 'safeMode'?: boolean;
3075
+ /**
3076
+ * Webhook URL for completion notifications
3077
+ */
3078
+ 'callbackUrl'?: string | null;
3079
+ /**
3080
+ * Whether to run preprocessing and extraction during the crawl phase
3081
+ */
3082
+ 'processDuringCrawl'?: boolean;
3083
+ 'crawlMethod'?: CreateCrawlerConfigRequestCrawlMethod;
3084
+ /**
3085
+ * Match threshold override for blueprint filtering
3086
+ */
3087
+ 'matchThreshold'?: number;
3088
+ /**
3089
+ * Blueprint fields applied during crawling
3090
+ */
3091
+ 'blueprint'?: Array<CreateCrawlerConfigRequestBlueprintInner>;
3092
+ 'extractionOptions'?: CreateCrawlerConfigRequestExtractionOptions;
3093
+ 'navigationOptions'?: CreateCrawlerConfigRequestNavigationOptions;
3094
+ 'artifactOptions'?: CreateCrawlerConfigRequestArtifactOptions;
1923
3095
  }
1924
3096
 
1925
3097
  /**
@@ -1933,32 +3105,26 @@ interface SchemaResponseDescription {
1933
3105
  * https://openapi-generator.tech
1934
3106
  * Do not edit the class manually.
1935
3107
  */
1936
-
1937
3108
  /**
1938
- * Schema object response
3109
+ * Response schema for starting a crawling session
1939
3110
  */
1940
- interface SchemaResponse$1 {
1941
- /**
1942
- * Unique identifier for the schema
1943
- */
1944
- 'id': string;
3111
+ interface StartCrawlerSessionResponse {
1945
3112
  /**
1946
- * Name of the schema
3113
+ * Response message
1947
3114
  */
1948
- 'name': string;
3115
+ 'message': string;
1949
3116
  /**
1950
- * Whether the schema is public
3117
+ * Session ID
1951
3118
  */
1952
- 'isPublic': boolean;
3119
+ 'sessionId': string;
1953
3120
  /**
1954
- * Array of field definitions
3121
+ * Config ID (included when creating config and starting session)
1955
3122
  */
1956
- 'schema': Array<SchemaResponseSchemaInner>;
3123
+ 'configId'?: string;
1957
3124
  /**
1958
- * Entity type for the schema
3125
+ * Error message if any
1959
3126
  */
1960
- 'entity': string | null;
1961
- 'description': SchemaResponseDescription;
3127
+ 'error': string | null;
1962
3128
  }
1963
3129
 
1964
3130
  /**
@@ -1972,19 +3138,14 @@ interface SchemaResponse$1 {
1972
3138
  * https://openapi-generator.tech
1973
3139
  * Do not edit the class manually.
1974
3140
  */
1975
- interface SlackChannelConfig {
1976
- /**
1977
- * Slack webhook URL (optional)
1978
- */
1979
- 'webhookUrl'?: string;
1980
- /**
1981
- * Slack channel ID
1982
- */
1983
- 'slackChannelId': string;
3141
+ /**
3142
+ * Schema for starting a session with an existing configuration
3143
+ */
3144
+ interface StartSessionWithConfigRequest {
1984
3145
  /**
1985
- * Slack channel name
3146
+ * Configuration ID to use for this session
1986
3147
  */
1987
- 'slackChannelName': string;
3148
+ 'configId': string;
1988
3149
  }
1989
3150
 
1990
3151
  /**
@@ -2664,6 +3825,18 @@ interface V4WorkflowsGet200ResponseWorkflowsInner {
2664
3825
  * Optional browser actions to perform before extraction
2665
3826
  */
2666
3827
  'browserActions'?: Array<V4WorkflowsWorkflowIdGet200ResponseBrowserActionsInner>;
3828
+ /**
3829
+ * Navigation mode for scraping. Determines how the scraper navigates through pages
3830
+ */
3831
+ 'navigationMode'?: V4WorkflowsGet200ResponseWorkflowsInnerNavigationModeEnum;
3832
+ /**
3833
+ * Maximum crawl depth (default: 50, max: 200). Only used when navigationMode is \'all-pages\'
3834
+ */
3835
+ 'maxDepth'?: number;
3836
+ /**
3837
+ * Maximum pages to crawl (default: 10,000, max: 100,000). Only used when navigationMode is \'all-pages\'
3838
+ */
3839
+ 'maxPages'?: number;
2667
3840
  /**
2668
3841
  * Extraction schema fields
2669
3842
  */
@@ -2687,12 +3860,6 @@ interface V4WorkflowsGet200ResponseWorkflowsInner {
2687
3860
  */
2688
3861
  'monitoring'?: boolean;
2689
3862
  'notificationConfig'?: V4WorkflowsWorkflowIdGet200ResponseNotificationConfig;
2690
- /**
2691
- * Number of connected channels per event type
2692
- */
2693
- 'channelCounts'?: {
2694
- [key: string]: number;
2695
- };
2696
3863
  }
2697
3864
  declare const V4WorkflowsGet200ResponseWorkflowsInnerStateEnum: {
2698
3865
  readonly Active: "ACTIVE";
@@ -2719,9 +3886,16 @@ declare const V4WorkflowsGet200ResponseWorkflowsInnerDisplayStateEnum: {
2719
3886
  readonly Setup: "SETUP";
2720
3887
  readonly Running: "RUNNING";
2721
3888
  readonly Failed: "FAILED";
2722
- readonly Deleted: "DELETED";
2723
3889
  };
2724
3890
  type V4WorkflowsGet200ResponseWorkflowsInnerDisplayStateEnum = typeof V4WorkflowsGet200ResponseWorkflowsInnerDisplayStateEnum[keyof typeof V4WorkflowsGet200ResponseWorkflowsInnerDisplayStateEnum];
3891
+ declare const V4WorkflowsGet200ResponseWorkflowsInnerNavigationModeEnum: {
3892
+ readonly SinglePage: "single-page";
3893
+ readonly PaginatedPage: "paginated-page";
3894
+ readonly PageAndDetail: "page-and-detail";
3895
+ readonly AgenticNavigation: "agentic-navigation";
3896
+ readonly AllPages: "all-pages";
3897
+ };
3898
+ type V4WorkflowsGet200ResponseWorkflowsInnerNavigationModeEnum = typeof V4WorkflowsGet200ResponseWorkflowsInnerNavigationModeEnum[keyof typeof V4WorkflowsGet200ResponseWorkflowsInnerNavigationModeEnum];
2725
3899
 
2726
3900
  /**
2727
3901
  * Kadoa API
@@ -2954,22 +4128,6 @@ interface V4WorkflowsWorkflowIdDataGet200Response {
2954
4128
  'pagination': V4WorkflowsWorkflowIdDataGet200ResponsePagination;
2955
4129
  }
2956
4130
 
2957
- /**
2958
- * Kadoa API
2959
- * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2960
- *
2961
- * The version of the OpenAPI document: 3.0.0
2962
- * Contact: support@kadoa.com
2963
- *
2964
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2965
- * https://openapi-generator.tech
2966
- * Do not edit the class manually.
2967
- */
2968
- interface V4WorkflowsWorkflowIdGet200ResponseDataLinking {
2969
- 'enabled'?: boolean;
2970
- 'linkingColumns'?: Array<string>;
2971
- }
2972
-
2973
4131
  /**
2974
4132
  * Kadoa API
2975
4133
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -3195,6 +4353,18 @@ interface V4WorkflowsWorkflowIdGet200Response {
3195
4353
  * Optional browser actions to perform before extraction
3196
4354
  */
3197
4355
  'browserActions'?: Array<V4WorkflowsWorkflowIdGet200ResponseBrowserActionsInner>;
4356
+ /**
4357
+ * Navigation mode for scraping. Determines how the scraper navigates through pages
4358
+ */
4359
+ 'navigationMode'?: V4WorkflowsWorkflowIdGet200ResponseNavigationModeEnum;
4360
+ /**
4361
+ * Maximum crawl depth (default: 50, max: 200). Only used when navigationMode is \'all-pages\'
4362
+ */
4363
+ 'maxDepth'?: number;
4364
+ /**
4365
+ * Maximum pages to crawl (default: 10,000, max: 100,000). Only used when navigationMode is \'all-pages\'
4366
+ */
4367
+ 'maxPages'?: number;
3198
4368
  /**
3199
4369
  * Extraction schema fields
3200
4370
  */
@@ -3216,19 +4386,8 @@ interface V4WorkflowsWorkflowIdGet200Response {
3216
4386
  */
3217
4387
  'additionalData'?: object;
3218
4388
  'dataValidation'?: V4WorkflowsWorkflowIdGet200ResponseDataValidation;
3219
- /**
3220
- * Columns configured for data linking
3221
- */
3222
- 'linkingColumns'?: Array<string>;
3223
- 'dataLinking'?: V4WorkflowsWorkflowIdGet200ResponseDataLinking;
3224
4389
  'validationStatistics'?: V4WorkflowsWorkflowIdGet200ResponseValidationStatistics;
3225
4390
  'notificationConfig'?: V4WorkflowsWorkflowIdGet200ResponseNotificationConfig;
3226
- /**
3227
- * Number of connected channels per event type
3228
- */
3229
- 'channelCounts'?: {
3230
- [key: string]: number;
3231
- };
3232
4391
  }
3233
4392
  declare const V4WorkflowsWorkflowIdGet200ResponseStateEnum: {
3234
4393
  readonly Active: "ACTIVE";
@@ -3254,9 +4413,16 @@ declare const V4WorkflowsWorkflowIdGet200ResponseDisplayStateEnum: {
3254
4413
  readonly Queued: "QUEUED";
3255
4414
  readonly Setup: "SETUP";
3256
4415
  readonly Running: "RUNNING";
3257
- readonly Deleted: "DELETED";
3258
4416
  };
3259
4417
  type V4WorkflowsWorkflowIdGet200ResponseDisplayStateEnum = typeof V4WorkflowsWorkflowIdGet200ResponseDisplayStateEnum[keyof typeof V4WorkflowsWorkflowIdGet200ResponseDisplayStateEnum];
4418
+ declare const V4WorkflowsWorkflowIdGet200ResponseNavigationModeEnum: {
4419
+ readonly SinglePage: "single-page";
4420
+ readonly PaginatedPage: "paginated-page";
4421
+ readonly PageAndDetail: "page-and-detail";
4422
+ readonly AgenticNavigation: "agentic-navigation";
4423
+ readonly AllPages: "all-pages";
4424
+ };
4425
+ type V4WorkflowsWorkflowIdGet200ResponseNavigationModeEnum = typeof V4WorkflowsWorkflowIdGet200ResponseNavigationModeEnum[keyof typeof V4WorkflowsWorkflowIdGet200ResponseNavigationModeEnum];
3260
4426
 
3261
4427
  /**
3262
4428
  * Kadoa API
@@ -3333,83 +4499,6 @@ interface V4WorkflowsWorkflowIdHistoryGet200Response {
3333
4499
  'workflowRuns'?: Array<V4WorkflowsWorkflowIdHistoryGet200ResponseWorkflowRunsInner>;
3334
4500
  }
3335
4501
 
3336
- /**
3337
- * Kadoa API
3338
- * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
3339
- *
3340
- * The version of the OpenAPI document: 3.0.0
3341
- * Contact: support@kadoa.com
3342
- *
3343
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
3344
- * https://openapi-generator.tech
3345
- * Do not edit the class manually.
3346
- */
3347
- /**
3348
- * Protocol information (optional)
3349
- */
3350
- interface V4WorkflowsWorkflowIdJobsJobIdGet200ResponseProtocol {
3351
- /**
3352
- * State of the run if it FAILED
3353
- */
3354
- 'decision'?: string;
3355
- /**
3356
- * Description why the run failed
3357
- */
3358
- 'reasoning'?: string;
3359
- }
3360
-
3361
- /**
3362
- * Kadoa API
3363
- * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
3364
- *
3365
- * The version of the OpenAPI document: 3.0.0
3366
- * Contact: support@kadoa.com
3367
- *
3368
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
3369
- * https://openapi-generator.tech
3370
- * Do not edit the class manually.
3371
- */
3372
-
3373
- interface V4WorkflowsWorkflowIdJobsJobIdGet200Response {
3374
- /**
3375
- * The job ID
3376
- */
3377
- 'id'?: string;
3378
- /**
3379
- * Current state of the job
3380
- */
3381
- 'state'?: V4WorkflowsWorkflowIdJobsJobIdGet200ResponseStateEnum;
3382
- /**
3383
- * Start date and time of the job
3384
- */
3385
- 'startedAt'?: string;
3386
- /**
3387
- * Finish date and time of the job (if completed)
3388
- */
3389
- 'finishedAt'?: string;
3390
- /**
3391
- * Record limit for the job
3392
- */
3393
- 'limit'?: number | null;
3394
- /**
3395
- * ID of the workflow/scraper
3396
- */
3397
- 'workflowId'?: string;
3398
- /**
3399
- * Job variables (optional)
3400
- */
3401
- 'variables'?: object;
3402
- 'protocol'?: V4WorkflowsWorkflowIdJobsJobIdGet200ResponseProtocol;
3403
- }
3404
- declare const V4WorkflowsWorkflowIdJobsJobIdGet200ResponseStateEnum: {
3405
- readonly InProgress: "IN_PROGRESS";
3406
- readonly Finished: "FINISHED";
3407
- readonly Failed: "FAILED";
3408
- readonly NotSupported: "NOT_SUPPORTED";
3409
- readonly FailedInsufficientFunds: "FAILED_INSUFFICIENT_FUNDS";
3410
- };
3411
- type V4WorkflowsWorkflowIdJobsJobIdGet200ResponseStateEnum = typeof V4WorkflowsWorkflowIdJobsJobIdGet200ResponseStateEnum[keyof typeof V4WorkflowsWorkflowIdJobsJobIdGet200ResponseStateEnum];
3412
-
3413
4502
  /**
3414
4503
  * Kadoa API
3415
4504
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -3426,27 +4515,6 @@ interface V4WorkflowsWorkflowIdMetadataPut200Response {
3426
4515
  'message'?: string;
3427
4516
  }
3428
4517
 
3429
- /**
3430
- * Kadoa API
3431
- * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
3432
- *
3433
- * The version of the OpenAPI document: 3.0.0
3434
- * Contact: support@kadoa.com
3435
- *
3436
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
3437
- * https://openapi-generator.tech
3438
- * Do not edit the class manually.
3439
- */
3440
- /**
3441
- * Data linking configuration for the workflow
3442
- */
3443
- interface V4WorkflowsWorkflowIdMetadataPutRequestDataLinking {
3444
- /**
3445
- * Whether data linking is enabled for the workflow. Can only be enabled if linking columns are already configured.
3446
- */
3447
- 'enabled'?: boolean;
3448
- }
3449
-
3450
4518
  /**
3451
4519
  * Kadoa API
3452
4520
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -3677,7 +4745,6 @@ interface V4WorkflowsWorkflowIdMetadataPutRequest {
3677
4745
  * The new extraction schema for the workflow
3678
4746
  */
3679
4747
  'schema'?: Array<V4WorkflowsWorkflowIdMetadataPutRequestSchemaInner>;
3680
- 'dataLinking'?: V4WorkflowsWorkflowIdMetadataPutRequestDataLinking;
3681
4748
  /**
3682
4749
  * Additional static data for the workflow
3683
4750
  */
@@ -5005,13 +6072,13 @@ interface WorkflowsApiInterface {
5005
6072
  */
5006
6073
  v4WorkflowsWorkflowIdHistoryGet(requestParameters: WorkflowsApiV4WorkflowsWorkflowIdHistoryGetRequest, options?: RawAxiosRequestConfig): AxiosPromise<V4WorkflowsWorkflowIdHistoryGet200Response>;
5007
6074
  /**
5008
- *
6075
+ * Retrieve the current status and telemetry information for a specific job
5009
6076
  * @summary Get job status and telemetry
5010
6077
  * @param {WorkflowsApiV4WorkflowsWorkflowIdJobsJobIdGetRequest} requestParameters Request parameters.
5011
6078
  * @param {*} [options] Override http request option.
5012
6079
  * @throws {RequiredError}
5013
6080
  */
5014
- v4WorkflowsWorkflowIdJobsJobIdGet(requestParameters: WorkflowsApiV4WorkflowsWorkflowIdJobsJobIdGetRequest, options?: RawAxiosRequestConfig): AxiosPromise<V4WorkflowsWorkflowIdJobsJobIdGet200Response>;
6081
+ v4WorkflowsWorkflowIdJobsJobIdGet(requestParameters: WorkflowsApiV4WorkflowsWorkflowIdJobsJobIdGetRequest, options?: RawAxiosRequestConfig): AxiosPromise<JobStatusResponse>;
5015
6082
  /**
5016
6083
  *
5017
6084
  * @summary Update workflow metadata
@@ -5126,6 +6193,10 @@ interface WorkflowsApiV4ChangesGetRequest {
5126
6193
  * Number of records to return for pagination
5127
6194
  */
5128
6195
  readonly limit?: number;
6196
+ /**
6197
+ * Comma-separated list of fields to exclude from each change object (e.g., \&quot;data,differences\&quot;)
6198
+ */
6199
+ readonly exclude?: string;
5129
6200
  }
5130
6201
  /**
5131
6202
  * Request parameters for v4WorkflowsGet operation in WorkflowsApi.
@@ -5151,6 +6222,10 @@ interface WorkflowsApiV4WorkflowsGetRequest {
5151
6222
  * Filter workflows by tags
5152
6223
  */
5153
6224
  readonly tags?: Array<string>;
6225
+ /**
6226
+ * Filter workflows by user ID (team members only)
6227
+ */
6228
+ readonly userId?: string;
5154
6229
  /**
5155
6230
  * Filter workflows by monitoring status
5156
6231
  */
@@ -5163,10 +6238,6 @@ interface WorkflowsApiV4WorkflowsGetRequest {
5163
6238
  * Filter workflows by template ID (DEPRECATED - templates replaced by schemas)
5164
6239
  */
5165
6240
  readonly templateId?: string;
5166
- /**
5167
- * Filter workflows by user ID (only works in team context)
5168
- */
5169
- readonly userId?: string;
5170
6241
  /**
5171
6242
  * Include deleted workflows (for compliance officers)
5172
6243
  */
@@ -5589,7 +6660,6 @@ declare const WorkflowDisplayStateEnum: {
5589
6660
  readonly Setup: "SETUP";
5590
6661
  readonly Running: "RUNNING";
5591
6662
  readonly Failed: "FAILED";
5592
- readonly Deleted: "DELETED";
5593
6663
  };
5594
6664
  type WorkflowDisplayStateEnum = (typeof WorkflowDisplayStateEnum)[keyof typeof WorkflowDisplayStateEnum];
5595
6665
  /**
@@ -5617,6 +6687,7 @@ declare class ListWorkflowsRequest implements WorkflowsApiV4WorkflowsGetRequest
5617
6687
  }
5618
6688
  type CreateWorkflowRequest = WorkflowWithExistingSchema;
5619
6689
  type CreateWorkflowWithCustomSchemaRequest = WorkflowWithEntityAndFields;
6690
+
5620
6691
  /**
5621
6692
  * Workflow response with SDK-curated enum types.
5622
6693
  * Remaps generated enum fields to prevent type leakage.
@@ -5638,7 +6709,7 @@ interface GetWorkflowResponse extends Omit<V4WorkflowsWorkflowIdGet200Response,
5638
6709
  /**
5639
6710
  * Get job response with SDK-curated enum types.
5640
6711
  */
5641
- interface GetJobResponse extends Omit<V4WorkflowsWorkflowIdJobsJobIdGet200Response, "state"> {
6712
+ interface GetJobResponse extends Omit<JobStatusResponse, "state"> {
5642
6713
  state?: JobStateEnum;
5643
6714
  }
5644
6715
  type RunWorkflowRequest = V4WorkflowsWorkflowIdRunPutRequest;
@@ -5775,6 +6846,73 @@ declare class DataFetcherService {
5775
6846
  fetchDataPages(options: FetchDataOptions): AsyncGenerator<FetchDataResult, void, unknown>;
5776
6847
  }
5777
6848
 
6849
+ /**
6850
+ * Crawler Domain ACL
6851
+ *
6852
+ * Wraps generated crawler API types for SDK consumers.
6853
+ * Prevents generated type leakage into public API.
6854
+ */
6855
+
6856
+ type CreateConfigRequest = CreateCrawlerConfigRequest;
6857
+ type StartCrawlRequest = StartCrawlerSessionRequest;
6858
+ type StartWithConfigRequest = StartSessionWithConfigRequest;
6859
+ type CrawlerConfig = CreateCrawlerConfigResponse | GetCrawlerConfigResponse;
6860
+ type DeleteConfigResult = DeleteCrawlerConfigResponse;
6861
+ type StartSessionResult = StartCrawlerSessionResponse;
6862
+ type SessionOperationResult = PauseCrawlerSessionResponse | ResumeCrawlerSessionResponse;
6863
+ type SessionStatus = GetCrawlerSessionStatusResponse;
6864
+ type CrawlerSession = CrawlerSessionItem;
6865
+ type SessionPagesResult = GetCrawlerSessionPagesResponse;
6866
+ type PageContent = GetCrawlerSessionPageResponse;
6867
+ type SessionDataList = GetCrawlerSessionDataListResponse;
6868
+ interface ListSessionsOptions {
6869
+ page?: number;
6870
+ pageSize?: number;
6871
+ userId?: string;
6872
+ }
6873
+ interface GetPagesOptions {
6874
+ currentPage?: number;
6875
+ pageSize?: number;
6876
+ }
6877
+ interface GetPageOptions {
6878
+ format?: "html" | "markdown";
6879
+ }
6880
+ interface GetAllDataOptions {
6881
+ includeAll?: boolean;
6882
+ }
6883
+
6884
+ declare class CrawlerConfigService {
6885
+ private readonly client;
6886
+ private _api;
6887
+ constructor(client: KadoaClient);
6888
+ private get api();
6889
+ createConfig(body: CreateConfigRequest): Promise<CrawlerConfig>;
6890
+ getConfig(configId: string): Promise<CrawlerConfig>;
6891
+ deleteConfig(configId: string): Promise<DeleteConfigResult>;
6892
+ }
6893
+
6894
+ declare class CrawlerSessionService {
6895
+ private readonly client;
6896
+ private _api;
6897
+ constructor(client: KadoaClient);
6898
+ private get api();
6899
+ start(body: StartCrawlRequest): Promise<StartSessionResult>;
6900
+ startWithConfig(body: StartWithConfigRequest): Promise<StartSessionResult>;
6901
+ pause(sessionId: string): Promise<SessionOperationResult>;
6902
+ resume(sessionId: string): Promise<SessionOperationResult>;
6903
+ listSessions(options?: ListSessionsOptions): Promise<CrawlerSession[]>;
6904
+ getSessionStatus(sessionId: string): Promise<SessionStatus>;
6905
+ getPages(sessionId: string, options?: GetPagesOptions): Promise<SessionPagesResult>;
6906
+ getPage(sessionId: string, pageId: string, options?: GetPageOptions): Promise<PageContent>;
6907
+ getAllSessionData(sessionId: string, options?: GetAllDataOptions): Promise<SessionDataList>;
6908
+ getBucketFile(filenameb64: string): Promise<unknown>;
6909
+ }
6910
+
6911
+ interface CrawlerDomain {
6912
+ config: CrawlerConfigService;
6913
+ session: CrawlerSessionService;
6914
+ }
6915
+
5778
6916
  interface KadoaUser {
5779
6917
  userId: string;
5780
6918
  email: string;
@@ -5997,8 +7135,8 @@ declare class NotificationSetupService {
5997
7135
  */
5998
7136
  interface PollingOptions {
5999
7137
  /**
6000
- * Polling interval in milliseconds (minimum 250ms)
6001
- * @default 1000
7138
+ * Polling interval in milliseconds (minimum 10000ms)
7139
+ * @default 10000
6002
7140
  */
6003
7141
  pollIntervalMs?: number;
6004
7142
  /**
@@ -6090,10 +7228,6 @@ declare class WorkflowsCoreService {
6090
7228
  get(id: WorkflowId): Promise<GetWorkflowResponse>;
6091
7229
  list(filters?: ListWorkflowsRequest): Promise<WorkflowResponse[]>;
6092
7230
  getByName(name: string): Promise<WorkflowResponse | undefined>;
6093
- /**
6094
- * @deprecated Use delete(id) instead.
6095
- */
6096
- cancel(id: WorkflowId): Promise<void>;
6097
7231
  delete(id: WorkflowId): Promise<void>;
6098
7232
  update(id: WorkflowId, input: UpdateWorkflowRequest): Promise<UpdateWorkflowResponse>;
6099
7233
  resume(id: WorkflowId): Promise<void>;
@@ -6255,7 +7389,53 @@ type FieldExample = DataFieldExample;
6255
7389
  * Re-exported from generated ClassificationFieldCategoriesInner model.
6256
7390
  */
6257
7391
  type Category = ClassificationFieldCategoriesInner;
7392
+ /**
7393
+ * Type-safe DataField with conditional example requirement.
7394
+ * - example is required for STRING, IMAGE, LINK, OBJECT, ARRAY
7395
+ * - example is optional for NUMBER, BOOLEAN, DATE, DATETIME, MONEY
7396
+ */
7397
+ type DataFieldFor<T extends DataType> = T extends DataTypeRequiringExample ? Omit<DataField, "example" | "dataType"> & {
7398
+ dataType: T;
7399
+ example: DataFieldExample;
7400
+ } : T extends DataTypeNotRequiringExample ? Omit<DataField, "example" | "dataType"> & {
7401
+ dataType: T;
7402
+ example?: DataFieldExample;
7403
+ } : never;
6258
7404
 
7405
+ /**
7406
+ * Data types that require an example value
7407
+ */
7408
+ type DataTypeRequiringExample = "STRING" | "IMAGE" | "LINK" | "OBJECT" | "ARRAY";
7409
+ /**
7410
+ * Data types that do not require an example value
7411
+ */
7412
+ type DataTypeNotRequiringExample = "NUMBER" | "BOOLEAN" | "DATE" | "DATETIME" | "MONEY";
7413
+ /**
7414
+ * Field options when example is required
7415
+ */
7416
+ interface FieldOptionsWithExample {
7417
+ /**
7418
+ * Example value for the field (required)
7419
+ */
7420
+ example: FieldExample;
7421
+ /**
7422
+ * Whether this field is a primary key
7423
+ */
7424
+ isKey?: boolean;
7425
+ }
7426
+ /**
7427
+ * Field options when example is optional
7428
+ */
7429
+ interface FieldOptionsWithoutExample {
7430
+ /**
7431
+ * Example value for the field (optional)
7432
+ */
7433
+ example?: FieldExample;
7434
+ /**
7435
+ * Whether this field is a primary key
7436
+ */
7437
+ isKey?: boolean;
7438
+ }
6259
7439
  /**
6260
7440
  * Optional configuration for schema fields
6261
7441
  */
@@ -6280,6 +7460,14 @@ declare class SchemaBuilder {
6280
7460
  entityName?: string;
6281
7461
  private hasSchemaFields;
6282
7462
  entity(entityName: string): this;
7463
+ /**
7464
+ * Add a structured field to the schema
7465
+ * @param name - Field name (alphanumeric only)
7466
+ * @param description - Field description
7467
+ * @param dataType - Data type (STRING, NUMBER, BOOLEAN, etc.)
7468
+ * @param options - Field configuration (example required for STRING, IMAGE, LINK, OBJECT, ARRAY)
7469
+ */
7470
+ field<T extends DataTypeRequiringExample>(name: string, description: string, dataType: T, options: FieldOptionsWithExample): this;
6283
7471
  /**
6284
7472
  * Add a structured field to the schema
6285
7473
  * @param name - Field name (alphanumeric only)
@@ -6287,7 +7475,7 @@ declare class SchemaBuilder {
6287
7475
  * @param dataType - Data type (STRING, NUMBER, BOOLEAN, etc.)
6288
7476
  * @param options - Optional field configuration
6289
7477
  */
6290
- field(name: string, description: string, dataType: DataType, options?: FieldOptions): this;
7478
+ field<T extends DataTypeNotRequiringExample>(name: string, description: string, dataType: T, options?: FieldOptionsWithoutExample): this;
6291
7479
  /**
6292
7480
  * Add a classification field to categorize content
6293
7481
  * @param name - Field name (alphanumeric only)
@@ -6692,6 +7880,7 @@ declare class KadoaClient {
6692
7880
  readonly schema: SchemasService;
6693
7881
  readonly user: UserService;
6694
7882
  readonly validation: ValidationDomain;
7883
+ readonly crawler: CrawlerDomain;
6695
7884
  constructor(config: KadoaClientConfig);
6696
7885
  /**
6697
7886
  * Get the underlying configuration
@@ -6979,4 +8168,4 @@ declare class KadoaHttpException extends KadoaSdkException {
6979
8168
  static mapStatusToCode(errorOrStatus: AxiosError | number): KadoaErrorCode;
6980
8169
  }
6981
8170
 
6982
- export { type BulkApproveRulesRequest, type BulkApproveRulesResponseData, type BulkDeleteRulesRequest, type BulkDeleteRulesResponseData, type Category, type ChannelConfig, type ChannelSetupRequestConfig, type CreateChannelRequest, type CreateRuleRequest, type CreateSchemaRequest, type CreateSettingsRequest, type CreateWorkflowInput, type CreateWorkflowRequest, type CreateWorkflowWithCustomSchemaRequest, type CreatedExtraction, DataFetcherService, type DataPagination, DataSortOrder, type DataType, type DeleteAllRulesRequest, type DeleteAllRulesResponseData, type DisableRuleRequest, ERROR_MESSAGES, type EmailChannelConfig, EntityResolverService, type ExtractOptions, ExtractionBuilderService, type ExtractionOptions, type ExtractionResult, ExtractionService, FetchDataOptions, type FetchDataResult, type FieldExample, type FieldOptions, type FieldType, type FinishedExtraction, type GenerateRuleRequest, type GenerateRulesRequest, type GetAnomaliesByRuleResponse, type GetAnomalyRulePageResponse, type GetJobResponse, type GetValidationResponse, type GetWorkflowResponse, type JobId, JobStateEnum, type JobWaitOptions, KadoaClient, type KadoaClientConfig, KadoaErrorCode, KadoaHttpException, KadoaSdkException, type KadoaUser, ListChannelsRequest, ListRulesRequest, type ListRulesResponse, ListSettingsRequest, type ListValidationsResponse, ListWorkflowValidationsRequest, ListWorkflowsRequest, type LocationConfig, type MetadataKey, type MonitoringConfig, type MonitoringField, type MonitoringOperator, MonitoringStatus, type NavigationMode, type NotificationChannel, type NotificationChannelConfig, NotificationChannelType, NotificationChannelsService, type NotificationDomain, type NotificationOptions, type NotificationSettings, type NotificationSettingsEventType, V5NotificationsSettingsGetEventTypeEnum as NotificationSettingsEventTypeEnum, NotificationSettingsService, type NotificationSetupRequestChannels, NotificationSetupService, type PollingOptions, type PreparedExtraction, type RawFormat, Realtime, type RealtimeConfig, ResponseFormat, type Rule, RuleStatus, RuleType, type RunWorkflowRequest, type RunWorkflowResponse, type ScheduleValidationResponse, SchemaBuilder, type SchemaField as SchemaDefinitionField, type SchemaField$1 as SchemaField, SchemaFieldDataType, type SchemaResponse, SchemasService, type SetupWorkflowNotificationSettingsRequest, type SetupWorkspaceNotificationSettingsRequest, type SlackChannelConfig, type SubmitExtractionResult, type SubmittedExtraction, TERMINAL_JOB_STATES, TERMINAL_RUN_STATES, type ToggleValidationResponse, UpdateInterval, type UpdateRuleRequest, type UpdateSchemaRequest, type UpdateWorkflowRequest, type UpdateWorkflowResponse, UserService, ValidationCoreService, type ValidationDomain, ValidationRulesService, ValidationStrategy, type WaitForReadyOptions, type WaitOptions, type WebhookChannelConfig, type WebhookChannelConfigAuth, type WebhookHttpMethod, type WebsocketChannelConfig, type WorkflowDataResponse, type WorkflowDetailsResponse, WorkflowDisplayStateEnum, type WorkflowId, type WorkflowInterval, type WorkflowMonitoringConfig, type WorkflowResponse, WorkflowState, WorkflowStateEnum, type WorkflowsApiInterface, WorkflowsCoreService, pollUntil, validateAdditionalData };
8171
+ export { type BulkApproveRulesRequest, type BulkApproveRulesResponseData, type BulkDeleteRulesRequest, type BulkDeleteRulesResponseData, type Category, type ChannelConfig, type ChannelSetupRequestConfig, type CreateChannelRequest, type CreateRuleRequest, type CreateSchemaRequest, type CreateSettingsRequest, type CreateWorkflowInput, type CreateWorkflowRequest, type CreateWorkflowWithCustomSchemaRequest, type CreatedExtraction, DataFetcherService, type DataFieldFor, type DataPagination, DataSortOrder, type DataType, type DataTypeNotRequiringExample, type DataTypeRequiringExample, type DeleteAllRulesRequest, type DeleteAllRulesResponseData, type DisableRuleRequest, ERROR_MESSAGES, type EmailChannelConfig, EntityResolverService, type ExtractOptions, ExtractionBuilderService, type ExtractionOptions, type ExtractionResult, ExtractionService, FetchDataOptions, type FetchDataResult, type FieldExample, type FieldOptions, type FieldOptionsWithExample, type FieldOptionsWithoutExample, type FieldType, type FinishedExtraction, type GenerateRuleRequest, type GenerateRulesRequest, type GetAnomaliesByRuleResponse, type GetAnomalyRulePageResponse, type GetJobResponse, type GetValidationResponse, type GetWorkflowResponse, type JobId, JobStateEnum, type JobWaitOptions, KadoaClient, type KadoaClientConfig, KadoaErrorCode, KadoaHttpException, KadoaSdkException, type KadoaUser, ListChannelsRequest, ListRulesRequest, type ListRulesResponse, ListSettingsRequest, type ListValidationsResponse, ListWorkflowValidationsRequest, ListWorkflowsRequest, type LocationConfig, type MetadataKey, type MonitoringConfig, type MonitoringField, type MonitoringOperator, MonitoringStatus, type NavigationMode, type NotificationChannel, type NotificationChannelConfig, NotificationChannelType, NotificationChannelsService, type NotificationDomain, type NotificationOptions, type NotificationSettings, type NotificationSettingsEventType, V5NotificationsSettingsGetEventTypeEnum as NotificationSettingsEventTypeEnum, NotificationSettingsService, type NotificationSetupRequestChannels, NotificationSetupService, type PollingOptions, type PreparedExtraction, type RawFormat, Realtime, type RealtimeConfig, ResponseFormat, type Rule, RuleStatus, RuleType, type RunWorkflowRequest, type RunWorkflowResponse, type ScheduleValidationResponse, SchemaBuilder, type SchemaField as SchemaDefinitionField, type SchemaField$1 as SchemaField, SchemaFieldDataType, type SchemaResponse, SchemasService, type SetupWorkflowNotificationSettingsRequest, type SetupWorkspaceNotificationSettingsRequest, type SlackChannelConfig, type SubmitExtractionResult, type SubmittedExtraction, TERMINAL_JOB_STATES, TERMINAL_RUN_STATES, type ToggleValidationResponse, UpdateInterval, type UpdateRuleRequest, type UpdateSchemaRequest, type UpdateWorkflowRequest, type UpdateWorkflowResponse, UserService, ValidationCoreService, type ValidationDomain, ValidationRulesService, ValidationStrategy, type WaitForReadyOptions, type WaitOptions, type WebhookChannelConfig, type WebhookChannelConfigAuth, type WebhookHttpMethod, type WebsocketChannelConfig, type WorkflowDataResponse, type WorkflowDetailsResponse, WorkflowDisplayStateEnum, type WorkflowId, type WorkflowInterval, type WorkflowMonitoringConfig, type WorkflowResponse, WorkflowState, WorkflowStateEnum, type WorkflowsApiInterface, WorkflowsCoreService, pollUntil, validateAdditionalData };