Browserless · Arazzo Workflow

Browserless Unblock Then Render

Version 1.0.0

Bypass bot detection on a protected URL, then re-render its HTML content and a PDF using the unblocked content.

1 workflow 1 source API 1 provider
View Spec View on GitHub Headless BrowserBrowser InfrastructureWeb AutomationAI AgentsWeb ScrapingBrowserQLPuppeteerPlaywrightSeleniumCDPStealthCAPTCHA SolvingResidential ProxyPDF GenerationScreenshotsSmart ScrapeCrawlSearchMCPSession RecordingHybrid AutomationArazzoWorkflows

Provider

browserless

Workflows

unblock-then-render
Unblock a protected URL, then render its content and PDF reusing the cleared cookies.
Calls /chrome/unblock to clear bot detection and obtain cookies and HTML, then re-renders the page HTML via /chrome/content and a PDF via /chrome/pdf, passing the recovered cookies so the renders reuse the cleared session.
3 steps inputs: token, url outputs: pdf, renderedHtml, unblockedContent, unblockedScreenshot
1
unblockSite
{$sourceDescriptions.browserRestApisApi.url}#/paths/~1chrome~1unblock/post
Clear bot detection on the URL, returning the page cookies, HTML content, and a base64 full-page screenshot.
2
renderContent
{$sourceDescriptions.browserRestApisApi.url}#/paths/~1chrome~1content/post
Re-render the page HTML via /chrome/content, injecting the cookies recovered from the unblock step so the render reuses the cleared session.
3
generatePdf
{$sourceDescriptions.browserRestApisApi.url}#/paths/~1chrome~1pdf/post
Generate a PDF of the same URL, reusing the recovered cookies so the PDF reflects the unblocked page.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Browserless Unblock Then Render
  summary: Bypass bot detection on a protected URL, then re-render its HTML content and a PDF using the unblocked content.
  description: >-
    A bot-detection-bypass pipeline. The workflow first calls /chrome/unblock to
    get past bot protection on the target URL, returning the unblocked HTML
    content, cookies, and a base64 screenshot. It then chains the recovered
    cookies into a /chrome/content render and a /chrome/pdf render of the same
    URL so subsequent renders reuse the session that already cleared detection.
    Every step spells out its token query parameter and JSON request body inline
    so the flow can be read and executed without opening the underlying OpenAPI
    description.
  version: 1.0.0
sourceDescriptions:
- name: browserRestApisApi
  url: ../openapi/browserless-browser-rest-apis-api-openapi.yml
  type: openapi
workflows:
- workflowId: unblock-then-render
  summary: Unblock a protected URL, then render its content and PDF reusing the cleared cookies.
  description: >-
    Calls /chrome/unblock to clear bot detection and obtain cookies and HTML,
    then re-renders the page HTML via /chrome/content and a PDF via /chrome/pdf,
    passing the recovered cookies so the renders reuse the cleared session.
  inputs:
    type: object
    required:
    - token
    - url
    properties:
      token:
        type: string
        description: The Browserless authorization token passed as a query parameter.
      url:
        type: string
        description: The URL of the protected site to unblock and render.
  steps:
  - stepId: unblockSite
    description: >-
      Clear bot detection on the URL, returning the page cookies, HTML content,
      and a base64 full-page screenshot.
    operationPath: '{$sourceDescriptions.browserRestApisApi.url}#/paths/~1chrome~1unblock/post'
    parameters:
    - name: token
      in: query
      value: $inputs.token
    requestBody:
      contentType: application/json
      payload:
        url: $inputs.url
        cookies: true
        content: true
        screenshot: true
        bestAttempt: true
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      cookies: $response.body#/cookies
      content: $response.body#/content
      screenshot: $response.body#/screenshot
  - stepId: renderContent
    description: >-
      Re-render the page HTML via /chrome/content, injecting the cookies
      recovered from the unblock step so the render reuses the cleared session.
    operationPath: '{$sourceDescriptions.browserRestApisApi.url}#/paths/~1chrome~1content/post'
    parameters:
    - name: token
      in: query
      value: $inputs.token
    requestBody:
      contentType: application/json
      payload:
        url: $inputs.url
        cookies: $steps.unblockSite.outputs.cookies
        bestAttempt: true
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      html: $response.body
  - stepId: generatePdf
    description: >-
      Generate a PDF of the same URL, reusing the recovered cookies so the PDF
      reflects the unblocked page.
    operationPath: '{$sourceDescriptions.browserRestApisApi.url}#/paths/~1chrome~1pdf/post'
    parameters:
    - name: token
      in: query
      value: $inputs.token
    requestBody:
      contentType: application/json
      payload:
        url: $inputs.url
        cookies: $steps.unblockSite.outputs.cookies
        bestAttempt: true
        options:
          printBackground: true
          format: A4
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      pdf: $response.body
  outputs:
    unblockedContent: $steps.unblockSite.outputs.content
    unblockedScreenshot: $steps.unblockSite.outputs.screenshot
    renderedHtml: $steps.renderContent.outputs.html
    pdf: $steps.generatePdf.outputs.pdf

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/browserless-unblock-then-render-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.