Skip to content

Commit 17ff8be

Browse files
authored
Nick; (#1726)
1 parent 57b8e66 commit 17ff8be

File tree

4 files changed

+23
-2
lines changed

4 files changed

+23
-2
lines changed

apps/js-sdk/firecrawl/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@mendable/firecrawl-js",
3-
"version": "1.28.0",
3+
"version": "1.29.0",
44
"description": "JavaScript SDK for Firecrawl API",
55
"main": "dist/index.js",
66
"types": "dist/index.d.ts",

apps/js-sdk/firecrawl/src/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,7 @@ export interface CrawlParams {
229229
* If not provided, the crawler may use the robots.txt crawl delay if available.
230230
*/
231231
delay?: number;
232+
allowSubdomains?: boolean;
232233
maxConcurrency?: number;
233234
}
234235

apps/python-sdk/firecrawl/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
from .firecrawl import FirecrawlApp, AsyncFirecrawlApp, JsonConfig, ScrapeOptions, ChangeTrackingOptions # noqa
1515

16-
__version__ = "2.11.0"
16+
__version__ = "2.12.0"
1717

1818
# Define the logger for the Firecrawl project
1919
logger: logging.Logger = logging.getLogger("firecrawl")

apps/python-sdk/firecrawl/firecrawl.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -273,6 +273,7 @@ class CrawlParams(pydantic.BaseModel):
273273
regexOnFullURL: Optional[bool] = None
274274
delay: Optional[int] = None # Delay in seconds between scrapes
275275
maxConcurrency: Optional[int] = None
276+
allowSubdomains: Optional[bool] = None
276277

277278
class CrawlResponse(pydantic.BaseModel):
278279
"""Response from crawling operations."""
@@ -708,6 +709,7 @@ def crawl_url(
708709
ignore_query_parameters: Optional[bool] = None,
709710
regex_on_full_url: Optional[bool] = None,
710711
delay: Optional[int] = None,
712+
allow_subdomains: Optional[bool] = None,
711713
max_concurrency: Optional[int] = None,
712714
poll_interval: Optional[int] = 2,
713715
idempotency_key: Optional[str] = None,
@@ -733,6 +735,7 @@ def crawl_url(
733735
ignore_query_parameters (Optional[bool]): Ignore URL parameters
734736
regex_on_full_url (Optional[bool]): Apply regex to full URLs
735737
delay (Optional[int]): Delay in seconds between scrapes
738+
allow_subdomains (Optional[bool]): Follow subdomains
736739
max_concurrency (Optional[int]): Maximum number of concurrent scrapes
737740
poll_interval (Optional[int]): Seconds between status checks (default: 2)
738741
idempotency_key (Optional[str]): Unique key to prevent duplicate requests
@@ -783,6 +786,8 @@ def crawl_url(
783786
crawl_params['regexOnFullURL'] = regex_on_full_url
784787
if delay is not None:
785788
crawl_params['delay'] = delay
789+
if allow_subdomains is not None:
790+
crawl_params['allowSubdomains'] = allow_subdomains
786791
if max_concurrency is not None:
787792
crawl_params['maxConcurrency'] = max_concurrency
788793

@@ -827,6 +832,8 @@ def async_crawl_url(
827832
ignore_query_parameters: Optional[bool] = None,
828833
regex_on_full_url: Optional[bool] = None,
829834
delay: Optional[int] = None,
835+
allow_subdomains: Optional[bool] = None,
836+
max_concurrency: Optional[int] = None,
830837
idempotency_key: Optional[str] = None,
831838
**kwargs
832839
) -> CrawlResponse:
@@ -850,6 +857,7 @@ def async_crawl_url(
850857
ignore_query_parameters (Optional[bool]): Ignore URL parameters
851858
regex_on_full_url (Optional[bool]): Apply regex to full URLs
852859
delay (Optional[int]): Delay in seconds between scrapes
860+
allow_subdomains (Optional[bool]): Follow subdomains
853861
max_concurrency (Optional[int]): Maximum number of concurrent scrapes
854862
idempotency_key (Optional[str]): Unique key to prevent duplicate requests
855863
**kwargs: Additional parameters to pass to the API
@@ -900,6 +908,8 @@ def async_crawl_url(
900908
crawl_params['regexOnFullURL'] = regex_on_full_url
901909
if delay is not None:
902910
crawl_params['delay'] = delay
911+
if allow_subdomains is not None:
912+
crawl_params['allowSubdomains'] = allow_subdomains
903913
if max_concurrency is not None:
904914
crawl_params['maxConcurrency'] = max_concurrency
905915

@@ -1080,6 +1090,7 @@ def crawl_url_and_watch(
10801090
ignore_query_parameters: Optional[bool] = None,
10811091
regex_on_full_url: Optional[bool] = None,
10821092
delay: Optional[int] = None,
1093+
allow_subdomains: Optional[bool] = None,
10831094
max_concurrency: Optional[int] = None,
10841095
idempotency_key: Optional[str] = None,
10851096
**kwargs
@@ -1104,6 +1115,7 @@ def crawl_url_and_watch(
11041115
ignore_query_parameters (Optional[bool]): Ignore URL parameters
11051116
regex_on_full_url (Optional[bool]): Apply regex to full URLs
11061117
delay (Optional[int]): Delay in seconds between scrapes
1118+
allow_subdomains (Optional[bool]): Follow subdomains
11071119
max_concurrency (Optional[int]): Maximum number of concurrent scrapes
11081120
idempotency_key (Optional[str]): Unique key to prevent duplicate requests
11091121
**kwargs: Additional parameters to pass to the API
@@ -1130,6 +1142,7 @@ def crawl_url_and_watch(
11301142
ignore_query_parameters=ignore_query_parameters,
11311143
regex_on_full_url=regex_on_full_url,
11321144
delay=delay,
1145+
allow_subdomains=allow_subdomains,
11331146
max_concurrency=max_concurrency,
11341147
idempotency_key=idempotency_key,
11351148
**kwargs
@@ -3325,6 +3338,7 @@ async def crawl_url(
33253338
ignore_query_parameters: Optional[bool] = None,
33263339
regex_on_full_url: Optional[bool] = None,
33273340
delay: Optional[int] = None,
3341+
allow_subdomains: Optional[bool] = None,
33283342
poll_interval: Optional[int] = 2,
33293343
idempotency_key: Optional[str] = None,
33303344
**kwargs
@@ -3349,6 +3363,7 @@ async def crawl_url(
33493363
ignore_query_parameters (Optional[bool]): Ignore URL parameters
33503364
regex_on_full_url (Optional[bool]): Apply regex to full URLs
33513365
delay (Optional[int]): Delay in seconds between scrapes
3366+
allow_subdomains (Optional[bool]): Follow subdomains
33523367
poll_interval (Optional[int]): Seconds between status checks (default: 2)
33533368
idempotency_key (Optional[str]): Unique key to prevent duplicate requests
33543369
**kwargs: Additional parameters to pass to the API
@@ -3398,6 +3413,8 @@ async def crawl_url(
33983413
crawl_params['regexOnFullURL'] = regex_on_full_url
33993414
if delay is not None:
34003415
crawl_params['delay'] = delay
3416+
if allow_subdomains is not None:
3417+
crawl_params['allowSubdomains'] = allow_subdomains
34013418

34023419
# Add any additional kwargs
34033420
crawl_params.update(kwargs)
@@ -3441,6 +3458,7 @@ async def async_crawl_url(
34413458
ignore_query_parameters: Optional[bool] = None,
34423459
regex_on_full_url: Optional[bool] = None,
34433460
delay: Optional[int] = None,
3461+
allow_subdomains: Optional[bool] = None,
34443462
poll_interval: Optional[int] = 2,
34453463
idempotency_key: Optional[str] = None,
34463464
**kwargs
@@ -3510,6 +3528,8 @@ async def async_crawl_url(
35103528
crawl_params['regexOnFullURL'] = regex_on_full_url
35113529
if delay is not None:
35123530
crawl_params['delay'] = delay
3531+
if allow_subdomains is not None:
3532+
crawl_params['allowSubdomains'] = allow_subdomains
35133533

35143534
# Add any additional kwargs
35153535
crawl_params.update(kwargs)

0 commit comments

Comments
 (0)