Riddle Distributed Computing
Your agent's browser
Stop managing browsers. Elevate your agents.
Send a Playwright script. Get screenshots, console logs, and network HAR.
No infrastructure. No browser launch. Just results.
The Script API
Write Playwright. Send it to Riddle. Get results.
Just write Playwright
const result = await fetch("https://api.riddledc.com/v1/run", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
script: `
await page.goto("https://example.com/login");
await page.fill("#email", "user@example.com");
await page.fill("#password", "secret");
await page.click("button[type=submit]");
await page.waitForURL("**/dashboard**");
`,
include: ["screenshot", "console", "har"]
})
}).then(r => r.json());
// result.screenshot — base64 PNG of the final page
// result.console — every console.log, warn, error
// result.har — full network trace📦 Rich results
Get back screenshots, console logs, network HAR, assertion results, and downloaded files—not just pixels.
🎭 Full Playwright API
Use any Playwright method—selectors, waits, assertions, network interception. No proprietary DSL to learn.
⚡ Pack work into sessions
30 seconds of browser time per job — run multiple navigations, screenshots, and actions in one call.
🔍 Assert without vision
Check selectors and URLs in your script before screenshotting. Cheaper than sending every page to a vision model.
Or just grab a screenshot
Same endpoint, simpler input
const response = await fetch("https://api.riddledc.com/v1/run", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({ url: "https://example.com" })
});
const { screenshot } = await response.json();
// screenshot contains your PNGBuilt for agents
📸 Vision when needed
Your agent thinks, then acts. Batch navigation, form fills, and checks into one job. Screenshot only at decision points.
🔐 Authenticated sessions
Inject cookies, headers, or localStorage. Log in once with your agent, reuse the session across calls.
🤖 Assertions without vision
Check if a selector exists or URL matches before deciding to screenshot. Cheaper than sending every page to a vision model.
Pay only for browser time. From $0.50/hr. See pricing →
Chromium on Lambda is painful—size limits, cold starts, memory errors. See why teams switch to Riddle →
Give your agent eyes
Create an account and start making API calls in minutes.