Node SDK
Learn about Hyperbrowser Node SDK
Installation
Usage
Create Session
Creates a new browser session with optional configuration.
Method:
client.createSession(params?: CreateSessionParams, options?): Promise<SessionDetail>
Endpoint:
POST /api/session
Parameters:
CreateSessionParams
:useStealth?: boolean
- Use stealth mode.useProxy?: boolean
- Use proxy.proxyServer?: string
- Proxy server URL to route the session through.proxyServerUsername?: string
- Username for proxy server authentication.proxyServerPassword?: string
- Password for proxy server authentication.proxyCountry?: Country
- Desired proxy country.operatingSystems?: OperatingSystem[]
- Preferred operating systems for the session. Possible values are:OperatingSystem.WINDOWS
OperatingSystem.ANDROID
OperatingSystem.MACOS
OperatingSystem.LINUX
OperatingSystem.IOS
device?: ("desktop" | "mobile")[]
- Preferred device types. Possible values are:"desktop"
"mobile"
platform?: Platform[]
- Preferred browser platforms. Possible values are:Platform.CHROME
Platform.FIREFOX
Platform.SAFARI
Platform.EDGE
locales?: ISO639_1[]
- Preferred locales (languages) for the session. Use ISO 639-1 codes.screen?: ScreenConfig
- Screen configuration for the session.width: number
- Screen width.height: number
- Screen height.
solveCaptchas?: boolean
- Solve captchas.adblock?: boolean
- Block ads.trackers?: boolean
- Block trackers.annoyances?: boolean
- Block annoyances.
Response:
SessionDetail
Example:
Get Session Details
Retrieves details of a specific session.
Method:
client.getSession(id, options?): Promise<SessionDetail>
Endpoint:
GET /api/session/{id}
Parameters:
id: string
- Session ID
Response:
SessionDetail
Example:
List Sessions
Retrieves a list of all sessions with optional filtering.
Method:
client.listSessions(params?, options?): Promise<SessionListResponse>
Endpoint:
GET /api/sessions
Parameters:
SessionListParams
:status?: "active" | "closed" | "error"
- Filter sessions by statuspage?: number
- Page number for pagination
Response:
SessionListResponse
Example:
Stop Session
Stops a running session.
Method:
client.stopSession(id, options?): Promise<BasicResponse>
Endpoint:
PUT /api/session/{id}/stop
Parameters:
id: string
- Session ID
Response:
BasicResponse
Example:
Start Scrape Job
Starts a scrape job for a given URL.
Method:
client.startScrapeJob(params: StartScrapeJobParams): Promise<StartScrapeJobResponse>
Endpoint:
POST /api/scrape
Parameters:
StartScrapeJobParams
:url: string
- URL to scrapeuseProxy?: boolean
- Use proxysolveCaptchas?: boolean
- Solve captchas
Response:
StartScrapeJobResponse
Example:
Get Scrape Job
Retrieves details of a specific scrape job.
Method:
client.getScrapeJob(id: string): Promise<ScrapeJobResponse>
Endpoint:
GET /api/scrape/{id}
Parameters:
id: string
- Scrape job ID
Response:
ScrapeJobResponse
Example:
Start Crawl Job
Starts a crawl job for a given URL.
Method:
client.startCrawlJob(params: StartCrawlJobParams): Promise<StartCrawlJobResponse>
Endpoint:
POST /api/crawl
Parameters:
StartCrawlJobParams
:url: string
- URL to crawlmaxPages?: number
- Maximum number of pages to crawlfollowLinks?: boolean
- Follow linksexcludePatterns?: string[]
- Exclude patternsincludePatterns?: string[]
- Include patternsuseProxy?: boolean
- Use proxysolveCaptchas?: boolean
- Solve captchas
Response:
StartCrawlJobResponse
Example:
Get Crawl Job
Retrieves details of a specific crawl job.
Method:
client.getCrawlJob(id: string): Promise<CrawlJobResponse>
Endpoint:
GET /api/crawl/{id}
Parameters:
id: string
- Crawl job ID
Response:
CrawlJobResponse
Example: