# Scrapfly Documentation

## Table of Contents

### Dashboard

- [Intro](https://scrapfly.io/docs)
- [Project](https://scrapfly.io/docs/project)
- [Account](https://scrapfly.io/docs/account)
- [Workspace & Team](https://scrapfly.io/docs/workspace-and-team)
- [Billing](https://scrapfly.io/docs/billing)

### Products

#### MCP Server

- [Getting Started](https://scrapfly.io/docs/mcp/getting-started)
- [Tools & API Spec](https://scrapfly.io/docs/mcp/tools)
- [Authentication](https://scrapfly.io/docs/mcp/authentication)
- [Examples & Use Cases](https://scrapfly.io/docs/mcp/examples)
- [FAQ](https://scrapfly.io/docs/mcp/faq)
##### Integrations

- [Overview](https://scrapfly.io/docs/mcp/integrations)
- [Claude Desktop](https://scrapfly.io/docs/mcp/integrations/claude-desktop)
- [Claude Code](https://scrapfly.io/docs/mcp/integrations/claude-code)
- [ChatGPT](https://scrapfly.io/docs/mcp/integrations/chatgpt)
- [Cursor](https://scrapfly.io/docs/mcp/integrations/cursor)
- [Cline](https://scrapfly.io/docs/mcp/integrations/cline)
- [Windsurf](https://scrapfly.io/docs/mcp/integrations/windsurf)
- [Zed](https://scrapfly.io/docs/mcp/integrations/zed)
- [Roo Code](https://scrapfly.io/docs/mcp/integrations/roo-code)
- [VS Code](https://scrapfly.io/docs/mcp/integrations/vscode)
- [LangChain](https://scrapfly.io/docs/mcp/integrations/langchain)
- [LlamaIndex](https://scrapfly.io/docs/mcp/integrations/llamaindex)
- [CrewAI](https://scrapfly.io/docs/mcp/integrations/crewai)
- [OpenAI](https://scrapfly.io/docs/mcp/integrations/openai)
- [n8n](https://scrapfly.io/docs/mcp/integrations/n8n)
- [Make](https://scrapfly.io/docs/mcp/integrations/make)
- [Zapier](https://scrapfly.io/docs/mcp/integrations/zapier)
- [Vapi AI](https://scrapfly.io/docs/mcp/integrations/vapi)
- [Agent Builder](https://scrapfly.io/docs/mcp/integrations/agent-builder)
- [Custom Client](https://scrapfly.io/docs/mcp/integrations/custom-client)


#### Web Scraping API

- [Getting Started](https://scrapfly.io/docs/scrape-api/getting-started)
- [API Specification]()
- [Monitoring](https://scrapfly.io/docs/monitoring)
- [Customize Request](https://scrapfly.io/docs/scrape-api/custom)
- [Debug](https://scrapfly.io/docs/scrape-api/debug)
- [Anti Scraping Protection](https://scrapfly.io/docs/scrape-api/anti-scraping-protection)
- [Proxy](https://scrapfly.io/docs/scrape-api/proxy)
- [Proxy Mode](https://scrapfly.io/docs/scrape-api/proxy-mode)
- [Proxy Mode - Screaming Frog](https://scrapfly.io/docs/scrape-api/proxy-mode/screaming-frog)
- [Proxy Mode - Apify](https://scrapfly.io/docs/scrape-api/proxy-mode/apify)
- [(Auto) Data Extraction](https://scrapfly.io/docs/scrape-api/extraction)
- [Javascript Rendering](https://scrapfly.io/docs/scrape-api/javascript-rendering)
- [Javascript Scenario](https://scrapfly.io/docs/scrape-api/javascript-scenario)
- [SSL](https://scrapfly.io/docs/scrape-api/ssl)
- [DNS](https://scrapfly.io/docs/scrape-api/dns)
- [Cache](https://scrapfly.io/docs/scrape-api/cache)
- [Session](https://scrapfly.io/docs/scrape-api/session)
- [Webhook](https://scrapfly.io/docs/scrape-api/webhook)
- [Screenshot](https://scrapfly.io/docs/scrape-api/screenshot)
- [Errors](https://scrapfly.io/docs/scrape-api/errors)
- [Timeout](https://scrapfly.io/docs/scrape-api/understand-timeout)
- [Throttling](https://scrapfly.io/docs/throttling)
- [Troubleshoot](https://scrapfly.io/docs/scrape-api/troubleshoot)
- [Billing](https://scrapfly.io/docs/scrape-api/billing)
- [FAQ](https://scrapfly.io/docs/scrape-api/faq)

#### Crawler API

- [Getting Started](https://scrapfly.io/docs/crawler-api/getting-started)
- [API Specification]()
- [Retrieving Results](https://scrapfly.io/docs/crawler-api/results)
- [WARC Format](https://scrapfly.io/docs/crawler-api/warc-format)
- [Data Extraction](https://scrapfly.io/docs/crawler-api/extraction-rules)
- [Webhook](https://scrapfly.io/docs/crawler-api/webhook)
- [Billing](https://scrapfly.io/docs/crawler-api/billing)
- [Errors](https://scrapfly.io/docs/crawler-api/errors)
- [Troubleshoot](https://scrapfly.io/docs/crawler-api/troubleshoot)
- [FAQ](https://scrapfly.io/docs/crawler-api/faq)

#### Screenshot API

- [Getting Started](https://scrapfly.io/docs/screenshot-api/getting-started)
- [API Specification]()
- [Accessibility Testing](https://scrapfly.io/docs/screenshot-api/accessibility)
- [Webhook](https://scrapfly.io/docs/screenshot-api/webhook)
- [Billing](https://scrapfly.io/docs/screenshot-api/billing)
- [Errors](https://scrapfly.io/docs/screenshot-api/errors)

#### Extraction API

- [Getting Started](https://scrapfly.io/docs/extraction-api/getting-started)
- [API Specification]()
- [Rules Template](https://scrapfly.io/docs/extraction-api/rules-and-template)
- [LLM Extraction](https://scrapfly.io/docs/extraction-api/llm-prompt)
- [AI Auto Extraction](https://scrapfly.io/docs/extraction-api/automatic-ai)
- [Webhook](https://scrapfly.io/docs/extraction-api/webhook)
- [Billing](https://scrapfly.io/docs/extraction-api/billing)
- [Errors](https://scrapfly.io/docs/extraction-api/errors)
- [FAQ](https://scrapfly.io/docs/extraction-api/faq)

#### Proxy Saver

- [Getting Started](https://scrapfly.io/docs/proxy-saver/getting-started)
- [Fingerprints](https://scrapfly.io/docs/proxy-saver/fingerprints)
- [Optimizations](https://scrapfly.io/docs/proxy-saver/optimizations)
- [SSL Certificates](https://scrapfly.io/docs/proxy-saver/certificates)
- [Protocols](https://scrapfly.io/docs/proxy-saver/protocols)
- [Pacfile](https://scrapfly.io/docs/proxy-saver/pacfile)
- [Secure Credentials](https://scrapfly.io/docs/proxy-saver/security)
- [Billing](https://scrapfly.io/docs/proxy-saver/billing)

#### Cloud Browser API

- [Getting Started](https://scrapfly.io/docs/cloud-browser-api/getting-started)
- [Proxy & Geo-Targeting](https://scrapfly.io/docs/cloud-browser-api/proxy)
- [Unblock API](https://scrapfly.io/docs/cloud-browser-api/unblock)
- [File Downloads](https://scrapfly.io/docs/cloud-browser-api/file-downloads)
- [Session Resume](https://scrapfly.io/docs/cloud-browser-api/session-resume)
- [Human-in-the-Loop](https://scrapfly.io/docs/cloud-browser-api/human-in-the-loop)
- [Debug Mode](https://scrapfly.io/docs/cloud-browser-api/debug-mode)
- [Bring Your Own Proxy](https://scrapfly.io/docs/cloud-browser-api/bring-your-own-proxy)
- [Browser Extensions](https://scrapfly.io/docs/cloud-browser-api/extensions)
##### Integrations

- [Puppeteer](https://scrapfly.io/docs/cloud-browser-api/puppeteer)
- [Playwright](https://scrapfly.io/docs/cloud-browser-api/playwright)
- [Selenium](https://scrapfly.io/docs/cloud-browser-api/selenium)
- [Vercel Agent Browser](https://scrapfly.io/docs/cloud-browser-api/agent-browser)
- [Browser Use](https://scrapfly.io/docs/cloud-browser-api/browser-use)
- [Stagehand](https://scrapfly.io/docs/cloud-browser-api/stagehand)

- [Billing](https://scrapfly.io/docs/cloud-browser-api/billing)
- [Errors](https://scrapfly.io/docs/cloud-browser-api/errors)


### Tools

- [Antibot Detector](https://scrapfly.io/docs/tools/antibot-detector)

### SDK

- [Golang](https://scrapfly.io/docs/sdk/golang)
- [Python](https://scrapfly.io/docs/sdk/python)
- [TypeScript](https://scrapfly.io/docs/sdk/typescript)
- [Scrapy](https://scrapfly.io/docs/sdk/scrapy)

### Integrations

- [Getting Started](https://scrapfly.io/docs/integration/getting-started)
- [LangChain](https://scrapfly.io/docs/integration/langchain)
- [LlamaIndex](https://scrapfly.io/docs/integration/llamaindex)
- [CrewAI](https://scrapfly.io/docs/integration/crewai)
- [Zapier](https://scrapfly.io/docs/integration/zapier)
- [Make](https://scrapfly.io/docs/integration/make)
- [n8n](https://scrapfly.io/docs/integration/n8n)

### Academy

- [Overview](https://scrapfly.io/academy)
- [Web Scraping Overview](https://scrapfly.io/academy/scraping-overview)
- [Tools](https://scrapfly.io/academy/tools-overview)
- [Reverse Engineering](https://scrapfly.io/academy/reverse-engineering)
- [Static Scraping](https://scrapfly.io/academy/static-scraping)
- [HTML Parsing](https://scrapfly.io/academy/html-parsing)
- [Dynamic Scraping](https://scrapfly.io/academy/dynamic-scraping)
- [Hidden API Scraping](https://scrapfly.io/academy/hidden-api-scraping)
- [Headless Browsers](https://scrapfly.io/academy/headless-browsers)
- [Hidden Web Data](https://scrapfly.io/academy/hidden-web-data)
- [JSON Parsing](https://scrapfly.io/academy/json-parsing)
- [Data Processing](https://scrapfly.io/academy/data-processing)
- [Scaling](https://scrapfly.io/academy/scaling)
- [Walkthrough Summary](https://scrapfly.io/academy/walkthrough-summary)
- [Scraper Blocking](https://scrapfly.io/academy/scraper-blocking)
- [Proxies](https://scrapfly.io/academy/proxies)

---

#   Accessibility Testing 

 [  View as markdown ](https://scrapfly.io/?view=markdown)   Copy for LLM    Copy for LLM  [     Open in ChatGPT ](https://chatgpt.com/?hints=search&prompt=Read%20from%20https%3A%2F%2Fscrapfly.io%2Fdocs%2Fscreenshot-api%2Faccessibility%20so%20I%20can%20ask%20questions%20about%20it.) [     Open in Claude ](https://claude.ai/new?q=Read%20from%20https%3A%2F%2Fscrapfly.io%2Fdocs%2Fscreenshot-api%2Faccessibility%20so%20I%20can%20ask%20questions%20about%20it.) [     Open in Perplexity ](https://www.perplexity.ai/search/new?q=Read%20from%20https%3A%2F%2Fscrapfly.io%2Fdocs%2Fscreenshot-api%2Faccessibility%20so%20I%20can%20ask%20questions%20about%20it.) 

 

 

 The Screenshot API includes powerful accessibility testing features that allow you to simulate how web pages appear to users with various vision deficiencies. This enables compliance testing for WCAG, ADA, Section 508, and other accessibility standards.

  **Why Accessibility Matters:** Over 1 billion people worldwide live with some form of visual impairment. Color blindness alone affects approximately 8% of males and 0.5% of females. Testing your website's accessibility is not just good practice-it's often a legal requirement. 

## Vision Deficiency Simulation

 Use the `vision_deficiency` parameter to capture screenshots that simulate how your web pages appear to users with specific visual impairments:

 ```
https://api.scrapfly.io/screenshot?url=https%3A%2F%2Fweb-scraping.dev%2Fproduct%2F1&vision_deficiency=deuteranopia&key=
```

 

   

 

 

 

### Supported Vision Deficiency Types

 | Type | Description | Prevalence | Common Issues Revealed |
|---|---|---|---|
| `none` | Normal vision (default) | - | - |
| `deuteranopia` | **Red-green color blindness (green-blind)**  Difficulty distinguishing green from red; green appears beige/gray | ~6% of males | - Red/green status indicators - Success/error color coding - Traffic light metaphors |
| `protanopia` | **Red-green color blindness (red-blind)**  Reduced sensitivity to red light; red appears dark/black | ~2% of males | - Red warning messages - Red call-to-action buttons - Price/discount highlighting |
| `tritanopia` | **Blue-yellow color blindness**  Difficulty distinguishing blue from yellow and violet from red | ~0.01% | - Blue hyperlinks on light backgrounds - Yellow warning indicators - Sky/water imagery contrast |
| `achromatopsia` | **Complete color blindness (monochromacy)**  Complete inability to perceive color; sees only in grayscale | ~0.003% | - Color-only information - Insufficient contrast ratios - Charts/graphs without patterns |
| `reducedContrast` | **Reduced contrast**  Simulates reduced contrast due to aging, low light, or other factors | ~Condition dependent | - Low contrast text - Low contrast UI elements - Low contrast icons |
| `blurredVision` | **Blurred/unfocused vision**  Simulates uncorrected refractive errors or age-related vision loss | ~2.2B globally | - Small text readability - Low contrast elements - Icon-only navigation 
 

## Code Examples

### Python

 ```
import requests
	
		# Test how page appears to users with deuteranopia (red-green color blindness)
		response = requests.get(
		    "https://api.scrapfly.io/screenshot",
		    params={
		        "key": "YOUR_API_KEY",
		        "url": "https://example.com",
		        "vision_deficiency": "deuteranopia",
		        "capture": "fullpage"
		    }
		)
	
		# Save the accessibility test screenshot
		with open("accessibility_test_deuteranopia.jpg", "wb") as f:
		    f.write(response.content)
```

 

   

 

 

 

### Python SDK

 ```
from scrapfly import ScrapflyClient, ScreenshotConfig
	
		client = ScrapflyClient(key="YOUR_API_KEY")
	
		# Test all vision deficiency types
		vision_types = ["deuteranopia", "protanopia", "tritanopia", "achromatopsia", "blurredVision", "reducedContrast"]
	
		for vision_type in vision_types:
		    result = client.screenshot(ScreenshotConfig(
		        url="https://example.com",
		        vision_deficiency=vision_type,
		        capture="fullpage"
		    ))
		    result.save(f"accessibility_{vision_type}.jpg")
		    print(f"Saved screenshot for {vision_type}")
```

 

   

 

 

 

### TypeScript SDK

 ```
import { ScrapflyClient, ScreenshotConfig } from 'scrapfly-sdk';
	
		const client = new ScrapflyClient({ key: 'YOUR_API_KEY' });
	
		// Test for color blindness accessibility
		const result = await client.screenshot(new ScreenshotConfig({
		    url: 'https://example.com',
		    visionDeficiency: 'deuteranopia',
		    capture: 'fullpage'
		}));
	
		// Save the result
		await result.save('accessibility_test.jpg');
```

 

   

 

 

 

### cURL

 ```
# Test for protanopia (red-blind)
		curl -G \
		    --url "https://api.scrapfly.io/screenshot" \
		    --data-urlencode "key=YOUR_API_KEY" \
		    --data-urlencode "url=https://example.com" \
		    --data-urlencode "vision_deficiency=protanopia" \
		    --data-urlencode "capture=fullpage" \
		    -o accessibility_protanopia.jpg
	
		# Test for blurred vision
		curl -G \
		    --url "https://api.scrapfly.io/screenshot" \
		    --data-urlencode "key=YOUR_API_KEY" \
		    --data-urlencode "url=https://example.com" \
		    --data-urlencode "vision_deficiency=blurredVision" \
		    --data-urlencode "capture=fullpage" \
		    -o accessibility_blurred.jpg
	
		# Test for reduced contrast
		curl -G \
		    --url "https://api.scrapfly.io/screenshot" \
		    --data-urlencode "key=YOUR_API_KEY" \
		    --data-urlencode "url=https://example.com" \
		    --data-urlencode "vision_deficiency=reducedContrast" \
		    --data-urlencode "capture=fullpage" \
		    -o accessibility_reduced_contrast.jpg
```

 

   

 

 

 

## Compliance Standards

 Vision deficiency simulation helps you test compliance with major accessibility standards and regulations:

#####   WCAG 2.2 (ISO/IEC 40500:2025) 

 Web Content Accessibility Guidelines require that information conveyed by color differences is also available without color (Success Criterion 1.4.1).

- **1.4.1 Use of Color** - Color not sole visual means
- **1.4.3 Contrast (Minimum)** - 4.5:1 text contrast
- **1.4.11 Non-text Contrast** - 3:1 for UI components
 
 

 

 

#####   Section 508 (US Federal) 

 US federal agencies must ensure electronic content is accessible to people with disabilities, including those with color vision deficiencies.

- Required for federal contractors
- Applies to public-facing websites
- Aligns with WCAG 2.0 Level AA
 
 

 

 

#####   ADA Title III 

 The Americans with Disabilities Act requires places of public accommodation to be accessible, which courts have interpreted to include websites.

- Applies to commercial websites
- Subject to DOJ enforcement
- Private lawsuit exposure
 
 

 

 

#####   European Accessibility Act (EAA) 

 EU directive requiring digital products and services to be accessible, with enforcement beginning in 2025.

- Covers e-commerce, banking, transport
- Applies to EU market participants
- Enforcement from June 2025
 
 

 

 

 

## Best Practices

#####   Accessibility Testing Workflow

 

1. **Test all color blindness types:** Run your pages through all vision deficiency simulations, not just the most common ones. Issues may appear only in specific types.
2. **Focus on interactive elements:** Pay special attention to buttons, links, form validation, and status messages that use color to convey meaning.
3. **Test error states:** Ensure error messages and validation feedback are visible without relying on red/green color coding.
4. **Verify data visualizations:** Charts, graphs, and maps often rely heavily on color. Test with `achromatopsia` to see if information is still distinguishable.
5. **Check text legibility:** Use `blurredVision` to identify text that may be too small or have insufficient contrast.
6. **Check text legibility:** Use `reducedContrast` to identify text or UI elements that have insufficient contrast.
 
 

 

## Use Cases

 ##### QA Testing

 Integrate accessibility screenshots into your CI/CD pipeline for automated visual regression testing across all vision types.

 

 

 

 ##### Compliance Audits

 Generate evidence for accessibility audits by capturing screenshots that demonstrate WCAG/ADA compliance or identify issues.

 

 

 

 ##### Design Validation

 Validate design mockups and color palettes before development to ensure accessibility is built in from the start.

 

 

 

 

## Combining with Other Features

 Vision deficiency simulation works seamlessly with other Screenshot API features:

- **`capture=fullpage`**  - Capture the entire scrollable page with vision deficiency simulation
- **`options=dark_mode`**  - Test dark mode themes for accessibility
- **`resolution=375x812`**  - Test mobile responsiveness alongside accessibility
- **`cache=true`**  - Cache results when running multiple tests on the same page

 ```
# Full accessibility audit: fullpage + dark mode + deuteranopia
		curl -G \
		    --url "https://api.scrapfly.io/screenshot" \
		    --data-urlencode "key=YOUR_API_KEY" \
		    --data-urlencode "url=https://example.com" \
		    --data-urlencode "vision_deficiency=deuteranopia" \
		    --data-urlencode "options=dark_mode" \
		    --data-urlencode "capture=fullpage" \
		    -o dark_mode_accessibility.jpg
```

 

   

 

 

 

## Billing

  Vision deficiency simulation is included at **no additional cost**. It's a rendering flag similar to `dark_mode` or `print_media_format` and doesn't affect your API credit usage.

## Related Documentation

- [Screenshot API Getting Started](https://scrapfly.io/docs/screenshot-api/getting-started) - Full API reference
- [Screenshot API Billing](https://scrapfly.io/docs/screenshot-api/billing) - Credit costs and spending management
- [Screenshot API Player](https://scrapfly.io/dashboard/playground/screenshot) - Interactive testing tool