firecrawl 4.3.5 → 4.3.7
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.
|
@@ -8,7 +8,7 @@ var require_package = __commonJS({
|
|
|
8
8
|
"package.json"(exports, module) {
|
|
9
9
|
module.exports = {
|
|
10
10
|
name: "@mendable/firecrawl-js",
|
|
11
|
-
version: "4.3.
|
|
11
|
+
version: "4.3.7",
|
|
12
12
|
description: "JavaScript SDK for Firecrawl API",
|
|
13
13
|
main: "dist/index.js",
|
|
14
14
|
types: "dist/index.d.ts",
|
package/dist/index.cjs
CHANGED
|
@@ -35,7 +35,7 @@ var require_package = __commonJS({
|
|
|
35
35
|
"package.json"(exports2, module2) {
|
|
36
36
|
module2.exports = {
|
|
37
37
|
name: "@mendable/firecrawl-js",
|
|
38
|
-
version: "4.3.
|
|
38
|
+
version: "4.3.7",
|
|
39
39
|
description: "JavaScript SDK for Firecrawl API",
|
|
40
40
|
main: "dist/index.js",
|
|
41
41
|
types: "dist/index.d.ts",
|
|
@@ -173,7 +173,10 @@ var HttpClient = class {
|
|
|
173
173
|
const cfg = { ...config };
|
|
174
174
|
if (cfg.method && ["post", "put", "patch"].includes(cfg.method.toLowerCase())) {
|
|
175
175
|
const data = cfg.data ?? {};
|
|
176
|
-
cfg.data = { ...data, origin: `js-sdk@${version}` };
|
|
176
|
+
cfg.data = { ...data, origin: typeof data.origin === "string" && data.origin.includes("mcp") ? data.origin : `js-sdk@${version}` };
|
|
177
|
+
if (typeof data.timeout === "number") {
|
|
178
|
+
cfg.timeout = data.timeout + 5e3;
|
|
179
|
+
}
|
|
177
180
|
}
|
|
178
181
|
const res = await this.instance.request(cfg);
|
|
179
182
|
if (res.status === 502 && attempt < this.maxRetries - 1) {
|
|
@@ -1218,7 +1221,7 @@ var FirecrawlApp = class {
|
|
|
1218
1221
|
"Content-Type": "application/json",
|
|
1219
1222
|
Authorization: `Bearer ${this.apiKey}`
|
|
1220
1223
|
};
|
|
1221
|
-
let jsonData = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
1224
|
+
let jsonData = { url, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1222
1225
|
if (jsonData?.extract?.schema) {
|
|
1223
1226
|
let schema = jsonData.extract.schema;
|
|
1224
1227
|
try {
|
|
@@ -1292,7 +1295,7 @@ var FirecrawlApp = class {
|
|
|
1292
1295
|
lang: params?.lang ?? "en",
|
|
1293
1296
|
country: params?.country ?? "us",
|
|
1294
1297
|
location: params?.location,
|
|
1295
|
-
origin: `js-sdk@${this.version}`,
|
|
1298
|
+
origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}`,
|
|
1296
1299
|
timeout: params?.timeout ?? 6e4,
|
|
1297
1300
|
scrapeOptions: params?.scrapeOptions ?? { formats: [] }
|
|
1298
1301
|
};
|
|
@@ -1352,7 +1355,7 @@ var FirecrawlApp = class {
|
|
|
1352
1355
|
*/
|
|
1353
1356
|
async crawlUrl(url, params, pollInterval = 2, idempotencyKey) {
|
|
1354
1357
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
1355
|
-
let jsonData = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
1358
|
+
let jsonData = { url, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1356
1359
|
try {
|
|
1357
1360
|
const response = await this.postRequest(
|
|
1358
1361
|
this.apiUrl + `/v1/crawl`,
|
|
@@ -1376,7 +1379,7 @@ var FirecrawlApp = class {
|
|
|
1376
1379
|
}
|
|
1377
1380
|
async asyncCrawlUrl(url, params, idempotencyKey) {
|
|
1378
1381
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
1379
|
-
let jsonData = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
1382
|
+
let jsonData = { url, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1380
1383
|
try {
|
|
1381
1384
|
const response = await this.postRequest(
|
|
1382
1385
|
this.apiUrl + `/v1/crawl`,
|
|
@@ -1535,7 +1538,7 @@ var FirecrawlApp = class {
|
|
|
1535
1538
|
*/
|
|
1536
1539
|
async mapUrl(url, params) {
|
|
1537
1540
|
const headers = this.prepareHeaders();
|
|
1538
|
-
let jsonData = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
1541
|
+
let jsonData = { url, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1539
1542
|
try {
|
|
1540
1543
|
const response = await this.postRequest(
|
|
1541
1544
|
this.apiUrl + `/v1/map`,
|
|
@@ -1564,7 +1567,7 @@ var FirecrawlApp = class {
|
|
|
1564
1567
|
*/
|
|
1565
1568
|
async batchScrapeUrls(urls, params, pollInterval = 2, idempotencyKey, webhook, ignoreInvalidURLs, maxConcurrency) {
|
|
1566
1569
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
1567
|
-
let jsonData = { urls, webhook, ignoreInvalidURLs, maxConcurrency, ...params, origin: `js-sdk@${this.version}` };
|
|
1570
|
+
let jsonData = { urls, webhook, ignoreInvalidURLs, maxConcurrency, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1568
1571
|
if (jsonData?.extract?.schema) {
|
|
1569
1572
|
let schema = jsonData.extract.schema;
|
|
1570
1573
|
try {
|
|
@@ -1616,7 +1619,7 @@ var FirecrawlApp = class {
|
|
|
1616
1619
|
}
|
|
1617
1620
|
async asyncBatchScrapeUrls(urls, params, idempotencyKey, webhook, ignoreInvalidURLs) {
|
|
1618
1621
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
1619
|
-
let jsonData = { urls, webhook, ignoreInvalidURLs, ...params, origin: `js-sdk@${this.version}` };
|
|
1622
|
+
let jsonData = { urls, webhook, ignoreInvalidURLs, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1620
1623
|
try {
|
|
1621
1624
|
const response = await this.postRequest(
|
|
1622
1625
|
this.apiUrl + `/v1/batch/scrape`,
|
|
@@ -1772,7 +1775,7 @@ var FirecrawlApp = class {
|
|
|
1772
1775
|
try {
|
|
1773
1776
|
const response = await this.postRequest(
|
|
1774
1777
|
this.apiUrl + `/v1/extract`,
|
|
1775
|
-
{ ...jsonData, schema: jsonSchema, origin: `js-sdk@${this.version}` },
|
|
1778
|
+
{ ...jsonData, schema: jsonSchema, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` },
|
|
1776
1779
|
headers
|
|
1777
1780
|
);
|
|
1778
1781
|
if (response.status === 200) {
|
|
@@ -1836,7 +1839,7 @@ var FirecrawlApp = class {
|
|
|
1836
1839
|
try {
|
|
1837
1840
|
const response = await this.postRequest(
|
|
1838
1841
|
this.apiUrl + `/v1/extract`,
|
|
1839
|
-
{ ...jsonData, schema: jsonSchema, origin: `js-sdk@${this.version}` },
|
|
1842
|
+
{ ...jsonData, schema: jsonSchema, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` },
|
|
1840
1843
|
headers
|
|
1841
1844
|
);
|
|
1842
1845
|
if (response.status === 200) {
|
|
@@ -2112,7 +2115,7 @@ var FirecrawlApp = class {
|
|
|
2112
2115
|
*/
|
|
2113
2116
|
async asyncDeepResearch(query, params) {
|
|
2114
2117
|
const headers = this.prepareHeaders();
|
|
2115
|
-
let jsonData = { query, ...params, origin: `js-sdk@${this.version}` };
|
|
2118
|
+
let jsonData = { query, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
2116
2119
|
if (jsonData?.jsonOptions?.schema) {
|
|
2117
2120
|
let schema = jsonData.jsonOptions.schema;
|
|
2118
2121
|
try {
|
|
@@ -2235,7 +2238,7 @@ var FirecrawlApp = class {
|
|
|
2235
2238
|
async __asyncDeepResearch(topic, params) {
|
|
2236
2239
|
const headers = this.prepareHeaders();
|
|
2237
2240
|
try {
|
|
2238
|
-
let jsonData = { topic, ...params, origin: `js-sdk@${this.version}` };
|
|
2241
|
+
let jsonData = { topic, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
2239
2242
|
const response = await this.postRequest(
|
|
2240
2243
|
`${this.apiUrl}/v1/deep-research`,
|
|
2241
2244
|
jsonData,
|
|
@@ -2333,7 +2336,7 @@ var FirecrawlApp = class {
|
|
|
2333
2336
|
*/
|
|
2334
2337
|
async asyncGenerateLLMsText(url, params) {
|
|
2335
2338
|
const headers = this.prepareHeaders();
|
|
2336
|
-
let jsonData = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
2339
|
+
let jsonData = { url, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
2337
2340
|
try {
|
|
2338
2341
|
const response = await this.postRequest(
|
|
2339
2342
|
`${this.apiUrl}/v1/llmstxt`,
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
require_package
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-VMAQHKH3.js";
|
|
4
4
|
|
|
5
5
|
// src/v2/utils/httpClient.ts
|
|
6
6
|
import axios from "axios";
|
|
@@ -57,7 +57,10 @@ var HttpClient = class {
|
|
|
57
57
|
const cfg = { ...config };
|
|
58
58
|
if (cfg.method && ["post", "put", "patch"].includes(cfg.method.toLowerCase())) {
|
|
59
59
|
const data = cfg.data ?? {};
|
|
60
|
-
cfg.data = { ...data, origin: `js-sdk@${version}` };
|
|
60
|
+
cfg.data = { ...data, origin: typeof data.origin === "string" && data.origin.includes("mcp") ? data.origin : `js-sdk@${version}` };
|
|
61
|
+
if (typeof data.timeout === "number") {
|
|
62
|
+
cfg.timeout = data.timeout + 5e3;
|
|
63
|
+
}
|
|
61
64
|
}
|
|
62
65
|
const res = await this.instance.request(cfg);
|
|
63
66
|
if (res.status === 502 && attempt < this.maxRetries - 1) {
|
|
@@ -1065,7 +1068,7 @@ var FirecrawlApp = class {
|
|
|
1065
1068
|
if (typeof process !== "undefined" && process.env && process.env.npm_package_version) {
|
|
1066
1069
|
return process.env.npm_package_version;
|
|
1067
1070
|
}
|
|
1068
|
-
const packageJson = await import("./package-
|
|
1071
|
+
const packageJson = await import("./package-XWA4UHUW.js");
|
|
1069
1072
|
return packageJson.default.version;
|
|
1070
1073
|
} catch (error) {
|
|
1071
1074
|
const isTest = typeof process !== "undefined" && (process.env.JEST_WORKER_ID != null || false);
|
|
@@ -1102,7 +1105,7 @@ var FirecrawlApp = class {
|
|
|
1102
1105
|
"Content-Type": "application/json",
|
|
1103
1106
|
Authorization: `Bearer ${this.apiKey}`
|
|
1104
1107
|
};
|
|
1105
|
-
let jsonData = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
1108
|
+
let jsonData = { url, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1106
1109
|
if (jsonData?.extract?.schema) {
|
|
1107
1110
|
let schema = jsonData.extract.schema;
|
|
1108
1111
|
try {
|
|
@@ -1176,7 +1179,7 @@ var FirecrawlApp = class {
|
|
|
1176
1179
|
lang: params?.lang ?? "en",
|
|
1177
1180
|
country: params?.country ?? "us",
|
|
1178
1181
|
location: params?.location,
|
|
1179
|
-
origin: `js-sdk@${this.version}`,
|
|
1182
|
+
origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}`,
|
|
1180
1183
|
timeout: params?.timeout ?? 6e4,
|
|
1181
1184
|
scrapeOptions: params?.scrapeOptions ?? { formats: [] }
|
|
1182
1185
|
};
|
|
@@ -1236,7 +1239,7 @@ var FirecrawlApp = class {
|
|
|
1236
1239
|
*/
|
|
1237
1240
|
async crawlUrl(url, params, pollInterval = 2, idempotencyKey) {
|
|
1238
1241
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
1239
|
-
let jsonData = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
1242
|
+
let jsonData = { url, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1240
1243
|
try {
|
|
1241
1244
|
const response = await this.postRequest(
|
|
1242
1245
|
this.apiUrl + `/v1/crawl`,
|
|
@@ -1260,7 +1263,7 @@ var FirecrawlApp = class {
|
|
|
1260
1263
|
}
|
|
1261
1264
|
async asyncCrawlUrl(url, params, idempotencyKey) {
|
|
1262
1265
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
1263
|
-
let jsonData = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
1266
|
+
let jsonData = { url, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1264
1267
|
try {
|
|
1265
1268
|
const response = await this.postRequest(
|
|
1266
1269
|
this.apiUrl + `/v1/crawl`,
|
|
@@ -1419,7 +1422,7 @@ var FirecrawlApp = class {
|
|
|
1419
1422
|
*/
|
|
1420
1423
|
async mapUrl(url, params) {
|
|
1421
1424
|
const headers = this.prepareHeaders();
|
|
1422
|
-
let jsonData = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
1425
|
+
let jsonData = { url, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1423
1426
|
try {
|
|
1424
1427
|
const response = await this.postRequest(
|
|
1425
1428
|
this.apiUrl + `/v1/map`,
|
|
@@ -1448,7 +1451,7 @@ var FirecrawlApp = class {
|
|
|
1448
1451
|
*/
|
|
1449
1452
|
async batchScrapeUrls(urls, params, pollInterval = 2, idempotencyKey, webhook, ignoreInvalidURLs, maxConcurrency) {
|
|
1450
1453
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
1451
|
-
let jsonData = { urls, webhook, ignoreInvalidURLs, maxConcurrency, ...params, origin: `js-sdk@${this.version}` };
|
|
1454
|
+
let jsonData = { urls, webhook, ignoreInvalidURLs, maxConcurrency, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1452
1455
|
if (jsonData?.extract?.schema) {
|
|
1453
1456
|
let schema = jsonData.extract.schema;
|
|
1454
1457
|
try {
|
|
@@ -1500,7 +1503,7 @@ var FirecrawlApp = class {
|
|
|
1500
1503
|
}
|
|
1501
1504
|
async asyncBatchScrapeUrls(urls, params, idempotencyKey, webhook, ignoreInvalidURLs) {
|
|
1502
1505
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
1503
|
-
let jsonData = { urls, webhook, ignoreInvalidURLs, ...params, origin: `js-sdk@${this.version}` };
|
|
1506
|
+
let jsonData = { urls, webhook, ignoreInvalidURLs, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
1504
1507
|
try {
|
|
1505
1508
|
const response = await this.postRequest(
|
|
1506
1509
|
this.apiUrl + `/v1/batch/scrape`,
|
|
@@ -1656,7 +1659,7 @@ var FirecrawlApp = class {
|
|
|
1656
1659
|
try {
|
|
1657
1660
|
const response = await this.postRequest(
|
|
1658
1661
|
this.apiUrl + `/v1/extract`,
|
|
1659
|
-
{ ...jsonData, schema: jsonSchema, origin: `js-sdk@${this.version}` },
|
|
1662
|
+
{ ...jsonData, schema: jsonSchema, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` },
|
|
1660
1663
|
headers
|
|
1661
1664
|
);
|
|
1662
1665
|
if (response.status === 200) {
|
|
@@ -1720,7 +1723,7 @@ var FirecrawlApp = class {
|
|
|
1720
1723
|
try {
|
|
1721
1724
|
const response = await this.postRequest(
|
|
1722
1725
|
this.apiUrl + `/v1/extract`,
|
|
1723
|
-
{ ...jsonData, schema: jsonSchema, origin: `js-sdk@${this.version}` },
|
|
1726
|
+
{ ...jsonData, schema: jsonSchema, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` },
|
|
1724
1727
|
headers
|
|
1725
1728
|
);
|
|
1726
1729
|
if (response.status === 200) {
|
|
@@ -1996,7 +1999,7 @@ var FirecrawlApp = class {
|
|
|
1996
1999
|
*/
|
|
1997
2000
|
async asyncDeepResearch(query, params) {
|
|
1998
2001
|
const headers = this.prepareHeaders();
|
|
1999
|
-
let jsonData = { query, ...params, origin: `js-sdk@${this.version}` };
|
|
2002
|
+
let jsonData = { query, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
2000
2003
|
if (jsonData?.jsonOptions?.schema) {
|
|
2001
2004
|
let schema = jsonData.jsonOptions.schema;
|
|
2002
2005
|
try {
|
|
@@ -2119,7 +2122,7 @@ var FirecrawlApp = class {
|
|
|
2119
2122
|
async __asyncDeepResearch(topic, params) {
|
|
2120
2123
|
const headers = this.prepareHeaders();
|
|
2121
2124
|
try {
|
|
2122
|
-
let jsonData = { topic, ...params, origin: `js-sdk@${this.version}` };
|
|
2125
|
+
let jsonData = { topic, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
2123
2126
|
const response = await this.postRequest(
|
|
2124
2127
|
`${this.apiUrl}/v1/deep-research`,
|
|
2125
2128
|
jsonData,
|
|
@@ -2217,7 +2220,7 @@ var FirecrawlApp = class {
|
|
|
2217
2220
|
*/
|
|
2218
2221
|
async asyncGenerateLLMsText(url, params) {
|
|
2219
2222
|
const headers = this.prepareHeaders();
|
|
2220
|
-
let jsonData = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
2223
|
+
let jsonData = { url, ...params, origin: typeof params.origin === "string" && params.origin.includes("mcp") ? params.origin : `js-sdk@${this.version}` };
|
|
2221
2224
|
try {
|
|
2222
2225
|
const response = await this.postRequest(
|
|
2223
2226
|
`${this.apiUrl}/v1/llmstxt`,
|
package/package.json
CHANGED
package/src/v1/index.ts
CHANGED
|
@@ -700,7 +700,7 @@ export default class FirecrawlApp {
|
|
|
700
700
|
"Content-Type": "application/json",
|
|
701
701
|
Authorization: `Bearer ${this.apiKey}`,
|
|
702
702
|
} as AxiosRequestHeaders;
|
|
703
|
-
let jsonData: any = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
703
|
+
let jsonData: any = { url, ...params, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` };
|
|
704
704
|
if (jsonData?.extract?.schema) {
|
|
705
705
|
let schema = jsonData.extract.schema;
|
|
706
706
|
|
|
@@ -782,7 +782,7 @@ export default class FirecrawlApp {
|
|
|
782
782
|
lang: params?.lang ?? "en",
|
|
783
783
|
country: params?.country ?? "us",
|
|
784
784
|
location: params?.location,
|
|
785
|
-
origin: `js-sdk@${this.version}`,
|
|
785
|
+
origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}`,
|
|
786
786
|
timeout: params?.timeout ?? 60000,
|
|
787
787
|
scrapeOptions: params?.scrapeOptions ?? { formats: [] },
|
|
788
788
|
};
|
|
@@ -854,7 +854,7 @@ export default class FirecrawlApp {
|
|
|
854
854
|
idempotencyKey?: string
|
|
855
855
|
): Promise<CrawlStatusResponse | ErrorResponse> {
|
|
856
856
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
857
|
-
let jsonData: any = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
857
|
+
let jsonData: any = { url, ...params, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` };
|
|
858
858
|
try {
|
|
859
859
|
const response: AxiosResponse = await this.postRequest(
|
|
860
860
|
this.apiUrl + `/v1/crawl`,
|
|
@@ -883,7 +883,7 @@ export default class FirecrawlApp {
|
|
|
883
883
|
idempotencyKey?: string
|
|
884
884
|
): Promise<CrawlResponse | ErrorResponse> {
|
|
885
885
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
886
|
-
let jsonData: any = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
886
|
+
let jsonData: any = { url, ...params, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` };
|
|
887
887
|
try {
|
|
888
888
|
const response: AxiosResponse = await this.postRequest(
|
|
889
889
|
this.apiUrl + `/v1/crawl`,
|
|
@@ -1059,7 +1059,7 @@ export default class FirecrawlApp {
|
|
|
1059
1059
|
*/
|
|
1060
1060
|
async mapUrl(url: string, params?: MapParams): Promise<MapResponse | ErrorResponse> {
|
|
1061
1061
|
const headers = this.prepareHeaders();
|
|
1062
|
-
let jsonData: any = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
1062
|
+
let jsonData: any = { url, ...params, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` };
|
|
1063
1063
|
|
|
1064
1064
|
try {
|
|
1065
1065
|
const response: AxiosResponse = await this.postRequest(
|
|
@@ -1098,7 +1098,7 @@ export default class FirecrawlApp {
|
|
|
1098
1098
|
maxConcurrency?: number,
|
|
1099
1099
|
): Promise<BatchScrapeStatusResponse | ErrorResponse> {
|
|
1100
1100
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
1101
|
-
let jsonData: any = { urls, webhook, ignoreInvalidURLs, maxConcurrency, ...params, origin: `js-sdk@${this.version}` };
|
|
1101
|
+
let jsonData: any = { urls, webhook, ignoreInvalidURLs, maxConcurrency, ...params, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` };
|
|
1102
1102
|
if (jsonData?.extract?.schema) {
|
|
1103
1103
|
let schema = jsonData.extract.schema;
|
|
1104
1104
|
|
|
@@ -1163,7 +1163,7 @@ export default class FirecrawlApp {
|
|
|
1163
1163
|
ignoreInvalidURLs?: boolean,
|
|
1164
1164
|
): Promise<BatchScrapeResponse | ErrorResponse> {
|
|
1165
1165
|
const headers = this.prepareHeaders(idempotencyKey);
|
|
1166
|
-
let jsonData: any = { urls, webhook, ignoreInvalidURLs, ...params, origin: `js-sdk@${this.version}` };
|
|
1166
|
+
let jsonData: any = { urls, webhook, ignoreInvalidURLs, ...params, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` };
|
|
1167
1167
|
try {
|
|
1168
1168
|
const response: AxiosResponse = await this.postRequest(
|
|
1169
1169
|
this.apiUrl + `/v1/batch/scrape`,
|
|
@@ -1339,7 +1339,7 @@ export default class FirecrawlApp {
|
|
|
1339
1339
|
try {
|
|
1340
1340
|
const response: AxiosResponse = await this.postRequest(
|
|
1341
1341
|
this.apiUrl + `/v1/extract`,
|
|
1342
|
-
{ ...jsonData, schema: jsonSchema, origin: `js-sdk@${this.version}` },
|
|
1342
|
+
{ ...jsonData, schema: jsonSchema, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` },
|
|
1343
1343
|
headers
|
|
1344
1344
|
);
|
|
1345
1345
|
|
|
@@ -1411,7 +1411,7 @@ export default class FirecrawlApp {
|
|
|
1411
1411
|
try {
|
|
1412
1412
|
const response: AxiosResponse = await this.postRequest(
|
|
1413
1413
|
this.apiUrl + `/v1/extract`,
|
|
1414
|
-
{ ...jsonData, schema: jsonSchema, origin: `js-sdk@${this.version}` },
|
|
1414
|
+
{ ...jsonData, schema: jsonSchema, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` },
|
|
1415
1415
|
headers
|
|
1416
1416
|
);
|
|
1417
1417
|
|
|
@@ -1772,7 +1772,7 @@ export default class FirecrawlApp {
|
|
|
1772
1772
|
*/
|
|
1773
1773
|
async asyncDeepResearch(query: string, params: DeepResearchParams<zt.ZodSchema>): Promise<DeepResearchResponse | ErrorResponse> {
|
|
1774
1774
|
const headers = this.prepareHeaders();
|
|
1775
|
-
let jsonData: any = { query, ...params, origin: `js-sdk@${this.version}` };
|
|
1775
|
+
let jsonData: any = { query, ...params, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` };
|
|
1776
1776
|
|
|
1777
1777
|
if (jsonData?.jsonOptions?.schema) {
|
|
1778
1778
|
let schema = jsonData.jsonOptions.schema;
|
|
@@ -1926,7 +1926,7 @@ export default class FirecrawlApp {
|
|
|
1926
1926
|
async __asyncDeepResearch(topic: string, params: DeepResearchParams): Promise<DeepResearchResponse | ErrorResponse> {
|
|
1927
1927
|
const headers = this.prepareHeaders();
|
|
1928
1928
|
try {
|
|
1929
|
-
let jsonData: any = { topic, ...params, origin: `js-sdk@${this.version}` };
|
|
1929
|
+
let jsonData: any = { topic, ...params, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` };
|
|
1930
1930
|
const response: AxiosResponse = await this.postRequest(
|
|
1931
1931
|
`${this.apiUrl}/v1/deep-research`,
|
|
1932
1932
|
jsonData,
|
|
@@ -2039,7 +2039,7 @@ export default class FirecrawlApp {
|
|
|
2039
2039
|
*/
|
|
2040
2040
|
async asyncGenerateLLMsText(url: string, params?: GenerateLLMsTextParams): Promise<GenerateLLMsTextResponse | ErrorResponse> {
|
|
2041
2041
|
const headers = this.prepareHeaders();
|
|
2042
|
-
let jsonData: any = { url, ...params, origin: `js-sdk@${this.version}` };
|
|
2042
|
+
let jsonData: any = { url, ...params, origin: typeof (params as any).origin === "string" && (params as any).origin.includes("mcp") ? (params as any).origin : `js-sdk@${this.version}` };
|
|
2043
2043
|
try {
|
|
2044
2044
|
const response: AxiosResponse = await this.postRequest(
|
|
2045
2045
|
`${this.apiUrl}/v1/llmstxt`,
|
|
@@ -53,7 +53,12 @@ export class HttpClient {
|
|
|
53
53
|
// For POST/PUT, ensure origin is present in JSON body too
|
|
54
54
|
if (cfg.method && ["post", "put", "patch"].includes(cfg.method.toLowerCase())) {
|
|
55
55
|
const data = (cfg.data ?? {}) as Record<string, unknown>;
|
|
56
|
-
cfg.data = { ...data, origin: `js-sdk@${version}` };
|
|
56
|
+
cfg.data = { ...data, origin: typeof data.origin === "string" && data.origin.includes("mcp") ? data.origin : `js-sdk@${version}` };
|
|
57
|
+
|
|
58
|
+
// If timeout is specified in the body, use it to override the request timeout
|
|
59
|
+
if (typeof data.timeout === "number") {
|
|
60
|
+
cfg.timeout = data.timeout + 5000;
|
|
61
|
+
}
|
|
57
62
|
}
|
|
58
63
|
const res = await this.instance.request<T>(cfg);
|
|
59
64
|
if (res.status === 502 && attempt < this.maxRetries - 1) {
|