How Gaffa gives Chayn's Survivor AI access to platform policies other AI tools can't reach
Discover how Gaffa powers Chayn's Survivor AI. Reliable access to policy pages that block AI agents, via a single API call, no stealth setup required.
Jul 06, 2026

Chayn built Survivor AI to help people experiencing image-based abuse generate takedown letters for social media platforms. Gaffa provides Chayn with reliable access to the terms of service, community guidelines, and legal pages of any social media platform, so that Chayn can cite the exact policy being broken in every letter it generates, even on platforms that block AI agents from reading those pages directly.
Chayn is a survivor-led organisation supporting people affected by gender-based violence, and Survivor AI is one of its tools for tackling image-based abuse, where someone's intimate images are shared online without their consent. Getting those images taken down can sometimes mean writing to the platform hosting them, and Survivor AI helps by generating takedown letters that cite the platform's own terms of service, community guidelines, legal pages, and the exact policies being broken, so the case is harder to ignore and more likely to be actioned quickly.
If you're looking for a non-bloated, reliable web scraper capable of accessing web pages that other tools (e.g., AI) are blocked from accessing, Gaffa makes it simple. Compared to other web scraping tools, it's a dream to set up and use.
Anna
Software Engineer @ Chayn
Why policy pages are hard to reach
To write a convincing takedown letter, Survivor AI needs the platform's actual policy language. This includes their terms of service, community guidelines, privacy policies, and the regional or legal documents that sit alongside them. Chayn's first approach was to point AI directly at these pages, but ran into two separate walls. The first was that several social media platforms block AI agents outright, including on the legal and policy pages Survivor AI needed most. The second was that some AI platforms restrict access to adult sites for understandable safety reasons, and that caught relevant pages in the same net, even though Survivor AI's use of them had nothing to do with adult content.
On top of that, when Chayn tried to access the same pages with other web automation tools outside AI platforms, the reachable pages often sat behind anti-bot protection, meaning they still required stealth techniques just to load reliably.
None of this is unreasonable on its own. Anti-bot protection exists to stop wholesale content theft and keep bad actors off a platform, and AI access restrictions on adult sites exist for good reason too. But Survivor AI is a legitimate, socially valuable use case caught on the wrong side of those defences, and Chayn needed a way through that didn't involve building and maintaining a stealth layer themselves.
How the integration works
Chayn uses Gaffa's capture_dom action to pull the fully rendered HTML of each policy page. Gaffa opens the page in a real, cloud-hosted browser, routes the request through residential proxies, and handles the anti-bot and stealth work behind the API, so Chayn's side of the integration is a single request rather than a browser-automation project. Access for cases like this is enabled responsibly, in collaboration with Gaffa's proxy providers, so a platform's legal pages can be reached for a genuine takedown request without opening the door to the abuse those protections are designed to stop.
Here's a simplified version of the request Chayn sends for a policy page:
Capture Policy Page With capture_dom
Gaffa returns the raw DOM as a text file, including JavaScript-rendered content. This matters because many platforms don't include the actual policy text in the initial HTML; instead, the page loads as an empty shell and the real content is fetched and inserted by JavaScript afterwards. A simple HTTP fetch only sees that empty shell, so it misses the content entirely. Gaffa gets around this by loading the page in a real browser and waiting for it to render before capture_dom captures the DOM, covering both pages built this way and static ones. Chayn parses the HTML on their side to extract the relevant policy sections before passing them to the AI layer, which categorises and slots them into a takedown letter. Other Gaffa users doing similar extraction can use the generate_markdown action instead, which returns the page as clean Markdown rather than raw HTML, but Chayn's existing parsing pipeline works directly from the DOM, so capture_dom was the better fit.
Time saved
Without Gaffa, Chayn would have needed to build and maintain their own browser automation, proxy rotation, and anti-bot handling, on top of the AI and parsing work Survivor AI actually needed, ongoing infrastructure most teams don't have the time or specialism for. Instead, Chayn gets real browsers, residential proxies, and anti-bot handling behind a single API call, so the team can spend its time on the letters that help someone get their images taken down, not on keeping a scraper running.
Gaffa's implementation time was super fast due to its clear, refined feature set and documentation. Having considered other tools, I'm certain we saved days if not weeks by choosing Gaffa.
Anna
Software Engineer @ Chayn
If you're building something that needs reliable access to pages that block bots or AI agents, or web scraping automation more generally, sign up for a free Gaffa account to get your first request running in minutes in the API playground, where you can also check out prebuilt templates.
Ready to build your own integration?
Join hundreds of teams using Gaffa to automate their browser workflows
