| 
					
				 | 
			
			
				@@ -1,3 +1,4 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import logging 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import time 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 from collections.abc import Mapping 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 from typing import Any 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -5,6 +6,7 @@ from typing import Any 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import requests 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 from requests.exceptions import HTTPError 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+logger = logging.getLogger(__name__) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 class FirecrawlApp: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     def __init__(self, api_key: str | None = None, base_url: str | None = None): 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -48,6 +50,7 @@ class FirecrawlApp: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         headers = self._prepare_headers() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         data = {'url': url, **kwargs} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         response = self._request('POST', endpoint, data, headers) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        logger.debug(f"Sent request to {endpoint=} body={data}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if response is None: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             raise HTTPError("Failed to scrape URL after multiple retries") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return response 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -57,6 +60,7 @@ class FirecrawlApp: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         headers = self._prepare_headers() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         data = {'query': query, **kwargs} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         response = self._request('POST', endpoint, data, headers) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        logger.debug(f"Sent request to {endpoint=} body={data}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if response is None: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             raise HTTPError("Failed to perform search after multiple retries") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return response 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -66,8 +70,9 @@ class FirecrawlApp: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         endpoint = f'{self.base_url}/v0/crawl' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         headers = self._prepare_headers(idempotency_key) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        data = {'url': url, **kwargs} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        data = {'url': url, **kwargs['params']} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         response = self._request('POST', endpoint, data, headers) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        logger.debug(f"Sent request to {endpoint=} body={data}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if response is None: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             raise HTTPError("Failed to initiate crawl after multiple retries") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         job_id: str = response['jobId'] 
			 |