Skip to content

ParallaxAPIs/parallaxapis-sdk-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

61 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Parallax Logo ParallaxAPIs SDK - GoLang Library for Bot Protection Bypass (Datadome & PerimeterX)

license MIT Go

Discord

Go SDK for bypassing DataDome and PerimeterX anti-bot protection.

πŸ“– Overview

ParallaxAPIs provides a request-based solution for bypassing DataDome and PerimeterX anti-bot systems. Instead of relying on slow, resource-heavy browser automation, our API generates valid cookies and tokens in 200-400ms through direct HTTP requests.

What We Solve:

  • βœ… DataDome - Slider captchas, interstitial pages, cookie generation, tags payload
  • βœ… PerimeterX - Cookie generation (_px3), challenge solver, vid & cts tokens

Key Benefits:

  • ⚑ Lightning Fast - 200-400ms response times vs 5-10+ seconds for browsers
  • πŸ”§ Simple Integration - Clean API with comprehensive documentation, no browser management required
  • πŸš€ Highly Scalable - Handle thousands of concurrent requests with minimal resources
  • βš™οΈ Flexible Configuration - Custom timeouts, HTTP clients, and proxy settings
  • πŸ’° Cost Effective - Lightweight infrastructure, minimal proxy usage
  • πŸ”„ Always Updated - We handle all reverse engineering and updates for you

πŸš€ Quick Start

Get started with ParallaxAPIs SDK's in under 5 minutes:

  1. Join our Discord - Connect with our community
  2. Create a ticket - Request your API key
  3. Get your free trial - Start testing immediately
  4. Install the SDK - Choose your preferred language
  5. Solve all anti-bots in seconds - Start bypassing DataDome, PerimeterX & more

πŸ“¦ Installation

go get github.com/ParallaxAPIs/parallaxapis-sdk-go

Go Get Demo


πŸ§‘β€πŸ’» Datadome Usage

⚑ SDK Initialization

import ( "time" "github.com/ParallaxAPIs/parallaxapis-sdk-go" ) // Basic initialization with API key sdk := parallaxsdk.NewDatadomeSDK("Key", "") // Custom host sdk := parallaxsdk.NewDatadomeSDK("Key", "https://example.host.com") // With custom timeout (default is 30 seconds) sdk := parallaxsdk.NewDatadomeSDK("Key", "", parallaxsdk.WithCustomTimeout(60*time.Second)) // With HTTP proxy for client requests sdk := parallaxsdk.NewDatadomeSDK("Key", "", parallaxsdk.WithClientProxy("http://user:pass@proxy.example.com:8080")) // Multiple options combined sdk := parallaxsdk.NewDatadomeSDK("Key", "https://example.host.com", parallaxsdk.WithCustomTimeout(45*time.Second), parallaxsdk.WithClientProxy("http://user:pass@proxy.example.com:8080"), parallaxsdk.WithInsecureSkipVerify(), ) usage, err := sdk.CheckUsage("site") if err != nil { fmt.Println("Error checking usage:", err) return } fmt.Println(usage)

πŸ•΅οΈβ€β™‚οΈ Generate New User Agent

sdk := parallaxsdk.NewDatadomeSDK("Key", "") userAgent, err := sdk.GenerateUserAgent(parallaxsdk.TaskGenUserAgent{ Region: "com", Site: "site", }) if err != nil { panic(err) } fmt.Println(userAgent)

πŸ” Get Task Data

sdk := parallaxsdk.NewDatadomeSDK("Key", "") challengeURL := "https://www.example.com/captcha/?initialCid=initialCid&cid=cid&referer=referer&hash=hash&t=t&s=1&e=e" cookie := "cookie_value" taskData, productType, err := parallaxsdk.ParseChallengeURL(challengeURL, cookie) if err != nil { panic(err) } fmt.Println(taskData, productType)

πŸ“„ Parse Challenge HTML

htmlBody := "<html><script>dd={example:1}</script></html>" prevCookie := "cookie_value" taskData, productType, err := parallaxsdk.ParseChallengeHTML(htmlBody, prevCookie) if err != nil { panic(err) } fmt.Println(taskData, productType)

πŸͺ Generate Cookie

sdk := parallaxsdk.NewDatadomeSDK("Key", "") challengeURL := "https://www.example.com/captcha/?initialCid=initialCid&cid=cid&referer=referer&hash=hash&t=t&s=1&e=e" cookie := "cookie_value" taskData, productType, err := parallaxsdk.ParseChallengeURL(challengeURL, cookie) if err != nil { panic(err) } cookieResp, err := sdk.GenerateDatadomeCookie(parallaxsdk.TaskDatadomeCookie{ Site: "site", Region: "com", Data: *taskData, Pd: productType, Proxy: "http://user:pas@addr:port", Proxyregion: "eu", }) if err != nil { panic(err) } fmt.Println(cookieResp)

🏷️ Generate Tags Cookie

sdk := parallaxsdk.NewDatadomeSDK("Key", "") cookieResp, err := sdk.GenerateDatadomeTagsCookie(parallaxsdk.TaskDatadomeTagsCookie{ Site: "site", Region: "com", Proxy: "http://user:pas@addr:port", Proxyregion: "eu", Cid: "cookie_value" }) if err != nil { panic(err) } fmt.Println(cookieResp)

πŸ” Detect and Parse Challenge

sdk := parallaxsdk.NewDatadomeSDK("Key", "") responseBody := "<html>...</html>" // Response body from website prevCookie := "cookie_value" isBlocked, taskData, productType, err := parallaxsdk.DetectChallengeAndParse(responseBody, prevCookie) if err != nil { panic(err) } if isBlocked { cookieResp, err := sdk.GenerateDatadomeCookie(parallaxsdk.TaskDatadomeCookie{ Site: "site", Region: "com", Data: *taskData, Pd: productType, Proxy: "http://user:pas@addr:port", Proxyregion: "eu", }) if err != nil { panic(err) } fmt.Println(cookieResp) }

πŸ›‘οΈ Perimeterx Usage

⚑ SDK Initialization

import ( "time" "github.com/ParallaxAPIs/parallaxapis-sdk-go" ) // Basic initialization with API key sdk := parallaxsdk.NewPerimeterxSDK("Key", "") // Custom host sdk := parallaxsdk.NewPerimeterxSDK("Key", "example.host.com") // With custom timeout (default is 30 seconds) sdk := parallaxsdk.NewPerimeterxSDK("Key", "", parallaxsdk.WithCustomTimeout(60*time.Second)) // With HTTP proxy for client requests sdk := parallaxsdk.NewPerimeterxSDK("Key", "", parallaxsdk.WithClientProxy("http://user:pass@proxy.example.com:8080")) // Multiple options combined sdk := parallaxsdk.NewPerimeterxSDK("Key", "example.host.com", parallaxsdk.WithCustomTimeout(45*time.Second), parallaxsdk.WithClientProxy("http://user:pass@proxy.example.com:8080"), parallaxsdk.WithInsecureSkipVerify(), ) usage, err := sdk.CheckUsage("site") if err != nil { fmt.Println("Error checking usage:", err) return } fmt.Println(usage)

πŸͺ Generate PX Cookie

sdk := parallaxsdk.NewPerimeterxSDK("Key", "") result, err := sdk.GenerateCookies(parallaxsdk.TaskGeneratePXCookies{ Proxy: "http://user:pas@addr:port", Proxyregion: "eu", Region: "com", Site: "site", }) if err != nil { panic(err) } fmt.Printf(result) holdCaptchaResult, err := sdk.GenerateHoldCaptcha(parallaxsdk.TaskGenerateHoldCaptcha{ Proxy: "http://user:pas@addr:port", Proxyregion: "eu", Region: "com", Site: "site", Data: result.Data, PowPro: "", }) if err != nil { panic(err) } fmt.Printf(holdCaptchaResult)

πŸ“š Documentation & Help

🌟 Contributing

Got feedback or found a bug? Feel free to open an issue or send us a pull request!

🏒 Enterprise

Unlock enterprise-grade performance with custom solutions, expanded limits, and expert support. Contact us to learn more.

πŸ“ License

MIT


πŸ”‘ Keywords

DataDome bypass β€’ PerimeterX bypass β€’ Anti-bot bypass β€’ Bot detection bypass β€’ CAPTCHA solver β€’ Cookie generator β€’ Go web scraping β€’ Go bot automation β€’ Golang anti-bot β€’ DataDome Go SDK β€’ PerimeterX Go SDK β€’ Headless browser alternative β€’ Request-based bypass β€’ Go automation β€’ Web scraping Go β€’ Bot mitigation bypass β€’ Sensor data generation β€’ Challenge solver