@mendable/firecrawl-js 4.35.0 → 4.38.0

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/src/v2/types.ts CHANGED
@@ -31,6 +31,7 @@ export interface JsonFormat extends Format {
31
31
  type: "json";
32
32
  prompt?: string;
33
33
  schema?: Record<string, unknown> | ZodTypeAny;
34
+ checkPromptInjection?: boolean;
34
35
  }
35
36
 
36
37
  export interface ScreenshotFormat {
@@ -1327,10 +1328,218 @@ export interface AgentStatusResponse {
1327
1328
  * names makes every future model a type error at the call site.
1328
1329
  */
1329
1330
  model?: "spark-1-pro" | "spark-1-mini" | "spark-2" | (string & {});
1331
+ /**
1332
+ * Reasoning effort the job ran with. Only set for runs that specified it;
1333
+ * older rows and default runs have no effort.
1334
+ */
1335
+ effort?: "low" | "medium" | "high";
1330
1336
  expiresAt: string;
1331
1337
  creditsUsed?: number;
1332
1338
  }
1333
1339
 
1340
+ /** Reasoning effort for agent jobs. Every level runs spark-2. */
1341
+ export type AgentEffort = "low" | "medium" | "high";
1342
+
1343
+ /** A single agent run as returned by the agent list endpoint. */
1344
+ export interface AgentListItem {
1345
+ id: string;
1346
+ createdAt: string;
1347
+ targetHint: string;
1348
+ origin: string;
1349
+ integration?: string;
1350
+ settings: {
1351
+ hidden: boolean;
1352
+ starred: boolean;
1353
+ label?: string;
1354
+ };
1355
+ status: "processing" | "completed" | "failed";
1356
+ options?: {
1357
+ urls?: string[];
1358
+ prompt: string;
1359
+ schema?: unknown;
1360
+ /**
1361
+ * Server-provided model name. Widened past the request-side union on
1362
+ * purpose: new models ship without an SDK release, so pinning this to
1363
+ * known names makes every future model a type error at the call site.
1364
+ */
1365
+ model: "spark-1-pro" | "spark-1-mini" | "spark-2" | (string & {});
1366
+ effort?: AgentEffort;
1367
+ };
1368
+ }
1369
+
1370
+ export interface AgentListResponse {
1371
+ success: boolean;
1372
+ agents?: AgentListItem[];
1373
+ /**
1374
+ * Absolute URL of the next page (pass its `before` value to listAgents to
1375
+ * continue). Only present when more pages exist.
1376
+ */
1377
+ next?: string;
1378
+ error?: string;
1379
+ }
1380
+
1381
+ /** Options for listing agent runs. */
1382
+ export interface AgentListOptions {
1383
+ /** Only return agent runs created before this unix millisecond timestamp. */
1384
+ before?: number;
1385
+ }
1386
+
1387
+ export type AgentTraceAgentRole = "orchestrator" | "subagent" | "browser" | "system";
1388
+
1389
+ export interface AgentTraceAgentIdentity {
1390
+ id: string;
1391
+ role: AgentTraceAgentRole;
1392
+ name: string;
1393
+ parentId?: string;
1394
+ }
1395
+
1396
+ export interface AgentTraceError {
1397
+ code: "cancelled" | "credit_limit_reached" | "parent_finished" | "refused" | "internal";
1398
+ source: "agent" | "tool" | "billing" | "system";
1399
+ retryable: boolean;
1400
+ message: string;
1401
+ }
1402
+
1403
+ export interface AgentTraceArtifactChange {
1404
+ kind: "json" | "markdown" | "html" | "screenshot" | "text";
1405
+ artifactId: string;
1406
+ path?: string;
1407
+ /** Fetch the full content via getAgentSnapshot(jobId, snapshotId). */
1408
+ snapshotId: string;
1409
+ change: "init" | "partial" | "append" | "modify" | "update";
1410
+ changedFields?: string[];
1411
+ itemCount?: number;
1412
+ sourceToolCallId?: string;
1413
+ }
1414
+
1415
+ interface AgentTraceEventBase {
1416
+ schemaVersion: 1;
1417
+ eventId: string;
1418
+ runId: string;
1419
+ occurredAt: string;
1420
+ producerSequence: number;
1421
+ agent: AgentTraceAgentIdentity;
1422
+ }
1423
+
1424
+ export interface AgentTraceRunStartedEvent extends AgentTraceEventBase {
1425
+ type: "run.started";
1426
+ }
1427
+
1428
+ export interface AgentTraceRunCancelRequestedEvent extends AgentTraceEventBase {
1429
+ type: "run.cancel_requested";
1430
+ reason: "user";
1431
+ }
1432
+
1433
+ export interface AgentTraceRunFinishedEvent extends AgentTraceEventBase {
1434
+ type: "run.finished";
1435
+ outcome: "succeeded" | "failed" | "cancelled" | "refused" | "credit_limit_reached";
1436
+ /** The canonical schema always writes this key (nullable), but older rows may omit it. */
1437
+ error?: AgentTraceError | null;
1438
+ }
1439
+
1440
+ export interface AgentTraceAgentStartedEvent extends AgentTraceEventBase {
1441
+ type: "agent.started";
1442
+ }
1443
+
1444
+ export interface AgentTraceAgentFinishedEvent extends AgentTraceEventBase {
1445
+ type: "agent.finished";
1446
+ outcome: "succeeded" | "failed" | "cancelled" | "refused";
1447
+ durationMs: number;
1448
+ /** The canonical schema always writes this key (nullable), but older rows may omit it. */
1449
+ error?: AgentTraceError | null;
1450
+ }
1451
+
1452
+ export interface AgentTraceBrowserSessionStartedEvent extends AgentTraceEventBase {
1453
+ type: "browser.session.started";
1454
+ sessionId: string;
1455
+ }
1456
+
1457
+ export interface AgentTraceBrowserSessionFinishedEvent extends AgentTraceEventBase {
1458
+ type: "browser.session.finished";
1459
+ sessionId: string;
1460
+ durationMs: number;
1461
+ }
1462
+
1463
+ export interface AgentTraceProgressReportedEvent extends AgentTraceEventBase {
1464
+ type: "progress.reported";
1465
+ phase: "planning" | "working" | "finalizing";
1466
+ message: string;
1467
+ }
1468
+
1469
+ export interface AgentTraceReasoningSummaryEvent extends AgentTraceEventBase {
1470
+ type: "reasoning.summary";
1471
+ text: string;
1472
+ }
1473
+
1474
+ export interface AgentTraceToolCallStartedEvent extends AgentTraceEventBase {
1475
+ type: "tool_call.started";
1476
+ toolCallId: string;
1477
+ toolName: string;
1478
+ parameters: unknown;
1479
+ }
1480
+
1481
+ export interface AgentTraceToolCallFinishedEvent extends AgentTraceEventBase {
1482
+ type: "tool_call.finished";
1483
+ toolCallId: string;
1484
+ toolName: string;
1485
+ result: unknown;
1486
+ }
1487
+
1488
+ export interface AgentTraceArtifactUpdatedEvent extends AgentTraceEventBase {
1489
+ type: "artifact.updated";
1490
+ artifact: AgentTraceArtifactChange;
1491
+ }
1492
+
1493
+ export interface AgentTraceErrorOccurredEvent extends AgentTraceEventBase {
1494
+ type: "error.occurred";
1495
+ error: AgentTraceError;
1496
+ }
1497
+
1498
+ /**
1499
+ * One event in an agent job's trace. Mirrors the canonical event schema of
1500
+ * the agent service (schemaVersion 1); `usage.recorded` events are withheld
1501
+ * server-side and `agent.started` carries no model name.
1502
+ */
1503
+ export type AgentTraceEvent =
1504
+ | AgentTraceRunStartedEvent
1505
+ | AgentTraceRunCancelRequestedEvent
1506
+ | AgentTraceRunFinishedEvent
1507
+ | AgentTraceAgentStartedEvent
1508
+ | AgentTraceAgentFinishedEvent
1509
+ | AgentTraceBrowserSessionStartedEvent
1510
+ | AgentTraceBrowserSessionFinishedEvent
1511
+ | AgentTraceProgressReportedEvent
1512
+ | AgentTraceReasoningSummaryEvent
1513
+ | AgentTraceToolCallStartedEvent
1514
+ | AgentTraceToolCallFinishedEvent
1515
+ | AgentTraceArtifactUpdatedEvent
1516
+ | AgentTraceErrorOccurredEvent;
1517
+
1518
+ export interface AgentTraceActiveBrowserSession {
1519
+ id: string;
1520
+ liveViewUrl: string;
1521
+ viewport: { width: number; height: number };
1522
+ }
1523
+
1524
+ export interface AgentTraceResponse {
1525
+ success: boolean;
1526
+ id?: string;
1527
+ events?: AgentTraceEvent[];
1528
+ creditsUsed?: number;
1529
+ /** Present only when the trace was requested with liveView: true. */
1530
+ activeBrowserSessions?: AgentTraceActiveBrowserSession[];
1531
+ error?: string;
1532
+ }
1533
+
1534
+ export interface AgentSnapshotResponse {
1535
+ success: boolean;
1536
+ id?: string;
1537
+ snapshotId?: string;
1538
+ /** Full artifact content as a JSON/string blob. */
1539
+ snapshot?: string;
1540
+ error?: string;
1541
+ }
1542
+
1334
1543
  export interface AgentOptions {
1335
1544
  model: "FIRE-1" | "v3-beta";
1336
1545
  }
@@ -51,6 +51,12 @@ export class HttpClient {
51
51
  return this.apiKey;
52
52
  }
53
53
 
54
+ /** The client-wide default request timeout, for callers that need to
55
+ * extend a specific request beyond it (e.g. scrape auto-resume). */
56
+ getTimeoutMs(): number {
57
+ return (this.instance.defaults.timeout as number | undefined) ?? 300000;
58
+ }
59
+
54
60
  private async request<T = any>(
55
61
  config: AxiosRequestConfig,
56
62
  ): Promise<AxiosResponse<T>> {