{"id":30618183,"url":"https://github.com/hyper-solutions/hyper-sdk-playwright","last_synced_at":"2025-08-30T11:09:41.207Z","repository":{"id":311135911,"uuid":"1024447075","full_name":"Hyper-Solutions/hyper-sdk-playwright","owner":"Hyper-Solutions","description":"Hyper Solutions SDK for Playwright - With support for Akamai Bot Manager, Incapsula, Datadome and Kasada.","archived":false,"fork":false,"pushed_at":"2025-08-22T09:21:33.000Z","size":85,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-08-22T11:37:13.347Z","etag":null,"topics":["akamai","akamai-api","akamai-bot-manager","akamai-sensor-generator","akamai-solver","datadome","datadome-api","datadome-bypass","datadome-captcha","datadome-interstitial","datadome-slider","datadome-solver","incapsula","incapsula-anti-bot","incapsula-api","incapsula-solver","kasada","kasada-api","kasada-solver","reese84"],"latest_commit_sha":null,"homepage":"https://discord.gg/akamai","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Hyper-Solutions.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-22T17:58:19.000Z","updated_at":"2025-08-22T10:54:09.000Z","dependencies_parsed_at":"2025-08-22T11:48:31.088Z","dependency_job_id":null,"html_url":"https://github.com/Hyper-Solutions/hyper-sdk-playwright","commit_stats":null,"previous_names":["hyper-solutions/hyper-sdk-playwright"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/Hyper-Solutions/hyper-sdk-playwright","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hyper-Solutions%2Fhyper-sdk-playwright","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hyper-Solutions%2Fhyper-sdk-playwright/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hyper-Solutions%2Fhyper-sdk-playwright/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hyper-Solutions%2Fhyper-sdk-playwright/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Hyper-Solutions","download_url":"https://codeload.github.com/Hyper-Solutions/hyper-sdk-playwright/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hyper-Solutions%2Fhyper-sdk-playwright/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272839799,"owners_count":25001886,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-30T02:00:09.474Z","response_time":77,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["akamai","akamai-api","akamai-bot-manager","akamai-sensor-generator","akamai-solver","datadome","datadome-api","datadome-bypass","datadome-captcha","datadome-interstitial","datadome-slider","datadome-solver","incapsula","incapsula-anti-bot","incapsula-api","incapsula-solver","kasada","kasada-api","kasada-solver","reese84"],"created_at":"2025-08-30T11:09:40.148Z","updated_at":"2025-08-30T11:09:41.126Z","avatar_url":"https://github.com/Hyper-Solutions.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hyper Solutions Playwright SDK - Automated Bot Protection Bypass for Akamai, DataDome, Incapsula, Kasada\n\n![Node Version](https://img.shields.io/badge/Node.js-16+-blue)\n![License](https://img.shields.io/badge/license-MIT-green)\n![NPM Version](https://img.shields.io/npm/v/hyper-sdk-playwright)\n![NPM Downloads](https://img.shields.io/npm/dm/hyper-sdk-playwright)\n\n[![](https://dcbadge.limes.pink/api/server/akamai)](https://discord.gg/akamai)\n\nA powerful **Playwright extension** that provides automated solving capabilities for major bot protection systems including **Akamai Bot Manager**, **DataDome**, **Incapsula**, and **Kasada**. Seamlessly integrate bot protection bypass into your Playwright automation workflows.\n\nPerfect for **web scraping**, **automation testing**, **monitoring**, and **data collection** from protected websites.\n\n\n## 🔑 Getting API Access\n\nBefore using this SDK, you'll need an API key from Hyper Solutions:\n\n1. **Visit [hypersolutions.co](https://hypersolutions.co?utm_source=github\u0026utm_medium=sdk_readme\u0026utm_campaign=playwirhgt_sdk_api_access)** to create your account\n2. **Choose your plan**:\n    - 💳 **Pay-as-you-go**: Perfect for testing and small-scale usage\n    - 📊 **Subscription plans**: Cost-effective for high-volume applications\n3. **Get your API key** from the dashboard\n4. **Start bypassing bot protection** with this SDK!\n\n\n## ✨ Features\n\n- 🛡️ **Akamai Bot Manager** - Automated sensor data generation and challenge solving\n- 🎯 **DataDome** - Complete bot detection bypass with real-time challenge handling\n- 🔒 **Incapsula** - Dynamic script interception and token generation\n- ⚡ **Kasada** - IPS script handling and TL endpoint management\n- 🔧 **Seamless Integration** - Drop-in handlers that work with existing Playwright code\n- 🚀 **Zero Configuration** - Automatic detection and handling of bot protection systems\n\n## 📦 Installation\n\nInstall the Playwright SDK and its dependencies:\n\n```bash\nnpm install hyper-sdk-playwright hyper-sdk-js playwright\n```\n\n## 📋 Prerequisites\n\n- Playwright installed and configured\n- Valid Hyper SDK API key\n- Chrome/Chromium browser\n- Node.js 16+ environment\n\n## 🚀 Quick Start\n\n```javascript\nimport { chromium } from 'playwright';\nimport { Session } from 'hyper-sdk-js';\nimport { AkamaiHandler, DataDomeHandler, IncapsulaHandler, KasadaHandler } from 'hyper-sdk-playwright';\n\nasync function main() {\n    // Initialize Hyper SDK session\n    const session = new Session(process.env.API_KEY);\n\n    // Launch browser with proxy (recommended)\n    const browser = await chromium.launch({\n        channel: 'chrome',\n        proxy: {\n            server: 'http://127.0.0.1:8888'\n        }\n    });\n\n    const context = await browser.newContext({\n        userAgent: \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36\"\n    });\n    \n    const page = await context.newPage();\n\n    // Initialize all protection handlers\n    const akamaiHandler = new AkamaiHandler({\n        session,\n        ipAddress: '203.0.113.1',\n        acceptLanguage: 'en-US,en;q=0.9'\n    });\n\n    const dataDomeHandler = new DataDomeHandler({\n        session,\n        ipAddress: '203.0.113.1',  \n        acceptLanguage: 'en-US,en;q=0.9'\n    });\n\n    const incapsulaHandler = new IncapsulaHandler({\n        session,\n        ipAddress: '203.0.113.1',\n        acceptLanguage: 'en-US,en;q=0.9',\n        scriptPathToSitekey: new Map([\n            ['/script-path-1', 'site-key-1'],\n            ['/script-path-2', 'site-key-2']\n        ])\n    });\n\n    const kasadaHandler = new KasadaHandler({\n        session,\n        ipAddress: '203.0.113.1',\n        acceptLanguage: 'en-US,en;q=0.9'\n    });\n\n    // Initialize all handlers\n    await Promise.all([\n        akamaiHandler.initialize(page, context),\n        dataDomeHandler.initialize(page, context), \n        incapsulaHandler.initialize(page, context),\n        kasadaHandler.initialize(page, context)\n    ]);\n\n    // Navigate to target site\n    console.log('Navigating to example.com...');\n    await page.goto('https://example.com');\n\n    await browser.close();\n}\n\nmain().catch(console.error);\n```\n\n## 📋 Table of Contents\n\n- [Quick Start](#-quick-start)\n- [Installation](#-installation)\n- [Handler Configuration](#-handler-configuration)\n- [Best Practices](#-best-practices)\n- [Troubleshooting](#-troubleshooting)\n- [API Reference](#-api-reference)\n- [Support](#-support)\n\n## 🔧 Handler Configuration\n\n### AkamaiHandler - Bypass Akamai Bot Manager\n\nAutomatically handles **Akamai sensor generation**, **pixel challenges**, and **sec-cpt verification**:\n\n```javascript\nconst akamaiHandler = new AkamaiHandler({\n    session: session,           // Hyper SDK session\n    ipAddress: 'your.ip.here',  // Your IP address\n    acceptLanguage: 'en-US,en;q=0.9' // Browser language\n});\n```\n\n### DataDomeHandler - Solve DataDome Challenges\n\nHandles **slider captchas**, **interstitial pages**, and **device fingerprinting**:\n\n```javascript\nconst dataDomeHandler = new DataDomeHandler({\n    session: session,\n    ipAddress: 'your.ip.here', \n    acceptLanguage: 'en-US,en;q=0.9'\n});\n```\n\n### IncapsulaHandler - Bypass Incapsula Protection\n\nManages **Reese84 sensors**, **UTMVC cookies**, and **dynamic script handling**:\n\n```javascript\nconst incapsulaHandler = new IncapsulaHandler({\n    session: session,\n    ipAddress: 'your.ip.here',\n    acceptLanguage: 'en-US,en;q=0.9',\n    scriptPathToSitekey: new Map([\n        ['/script-path', 'site-key'] // Map script paths to site keys\n    ])\n});\n```\n\n### KasadaHandler - Defeat Kasada Bot Manager\n\nAutomatically handles **IPS script processing**, **TL endpoint management**, and **POW generation**:\n\n```javascript\nconst kasadaHandler = new KasadaHandler({\n    session: session,\n    ipAddress: 'your.ip.here',\n    acceptLanguage: 'en-US,en;q=0.9'\n});\n```\n\n## 🎯 Best Practices\n\n### Proxy Configuration\n\nAlways use a proxy to avoid IP-based detection and rate limiting:\n\n```javascript\nconst browser = await chromium.launch({\n    proxy: {\n        server: 'http://proxy-server:port',\n        username: 'username', // if required\n        password: 'password'  // if required\n    }\n});\n```\n\n### User Agent Management\n\nUse realistic, up-to-date user agents that match your target audience:\n\n```javascript\nconst context = await browser.newContext({\n    userAgent: \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36\"\n});\n```\n\n### Error Handling\n\nAlways implement proper error handling for robust automation:\n\n```javascript\ntry {\n    await handler.initialize(page, context);\n    await page.goto(targetUrl);\n} catch (error) {\n    console.error('Protection bypass failed:', error);\n    // Implement retry logic or fallback\n}\n```\n\n## 🔧 Troubleshooting\n\n### Common Issues\n\n**Handler not initializing**\n- Ensure the Hyper SDK session is valid and has sufficient credits\n- Verify your API key has the necessary permissions\n- Check network connectivity to Hyper SDK endpoints\n\n**Script path mapping errors (Incapsula)**\n- Ensure script paths are correctly mapped to site keys\n- Contact support for accurate site key information\n- Monitor browser network requests for script path changes\n\n**Browser compatibility issues**\n- Use Chrome/Chromium browsers for best compatibility\n- Ensure Playwright is updated to the latest version\n- Verify user agent matches your browser choice\n\n## 🆘 Support\n\n### Contact Information\n\nFor technical support or API questions:\n- Documentation: [https://docs.justhyped.dev](https://docs.justhyped.dev)\n- Discord: [https://discord.gg/akamai](https://discord.gg/akamai)\n\n---\n\n**Keywords**: Playwright automation, bot protection bypass, web scraping, Akamai bypass, DataDome bypass, Incapsula bypass, Kasada bypass, anti-bot, captcha solver, browser automation, headless browser, web automation, bot detection, Playwright extension","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhyper-solutions%2Fhyper-sdk-playwright","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhyper-solutions%2Fhyper-sdk-playwright","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhyper-solutions%2Fhyper-sdk-playwright/lists"}