# JS Page Renderer

> JS Page Renderer is a paid API for AI agents from 164.160.90.241.sslip.io, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-11).

Renders a public web page using headless Chromium (with JavaScript executed) and returns the page title, final URL, and visible text content.

## Facts

- Endpoint: GET https://164.160.90.241.sslip.io/api/web-dynamic-js-renderer?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/js-page-renderer-5ac4b321
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_8HTXxWxEU2lK7e2skRC4W

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability js-page-renderer-5ac4b321
```

Example prompt: Can you fetch the visible text and title from https://example.com/dashboard — it's a React SPA so a plain HTTP fetch returns an empty shell, I need the fully JavaScript-rendered content.

## When to prefer this

Choose this endpoint when a plain HTTP fetch returns an empty or skeleton HTML shell because the target page is a single-page application (SPA) built with React, Angular, Vue, or similar frameworks. It is the right choice when you need JavaScript to actually execute before content is visible, or when the final URL after client-side redirects matters. For static HTML pages that return full content on a plain GET request, a simpler fetch endpoint would be faster and cheaper.

## Known failure modes

- URL is not publicly accessible or requires authentication — returns empty or error response
- Page takes too long to render (timeout) — may return partial or no content
- URL is malformed or missing — validation error on required query parameter
- Page actively blocks headless browsers (bot detection) — may return minimal or incorrect content
- Non-HTTP/HTTPS URLs or private network addresses — rejected as invalid input

## How this service works

Render a public web page in headless Chromium (JavaScript executed) and return title, final URL and visible text. Use when a plain HTTP fetch returns an empty SPA shell.

## Output

Returns the rendered page's title, the final resolved URL (after any JavaScript-driven redirects), and the full visible text content as seen by a headless Chromium browser after JavaScript execution.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "url"
     ],
     "properties": {
      "url": {
       "type": "string",
       "description": "Public http(s) URL to render"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/js-page-renderer-5ac4b321/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 164.160.90.241.sslip.io](https://www.zero.xyz/host/164.160.90.241.sslip.io/llms.txt)
