Documentation Index
Fetch the complete documentation index at: https://gologin.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
Gologin Cloud Browser lets you run a browser session in the cloud and control it from your automation tool (Puppeteer / Playwright) using a single connection URL.
Prefer a CLI? Use the Gologin Agent Browser CLI to control Cloud Browser from the shell without writing code — built for AI agents with snapshots, refs, and a persistent daemon.
Connection URL
Use this URL in your automation library as a remote browser endpoint:
https://cloudbrowser.gologin.com/connect?token=${token}&profile=${profileId}
token — your Gologin dev token.
profile — profile ID (optional):
- if provided, Gologin will run this profile in the cloud;
- if omitted, Gologin will create a new profile for the session.
Note: This URL is used as a WebSocket connection endpoint by automation libraries (for example browserWSEndpoint in Puppeteer).
Generate your token in the GoLogin dashboard: Personal Area → API Token.
Managing profiles (proxy, fingerprint, etc.)
Cloud Browser is only the connection layer (remote browser session).
To create/update profiles, attach proxies, configure fingerprint, tags, and other profile settings, use the Gologin REST API:
Examples
import puppeteer from 'puppeteer-core';
const token = process.env.GL_API_TOKEN || 'your dev token here';
const profileId = 'profile ID';
const CLOUD_BROWSER_URL = `https://cloudbrowser.gologin.com/connect?token=${token}&profile=${profileId}`;
const STOP_PROFILE_URL = `https://api.gologin.com/browser/${profileId}/web`;
async function stopProfile() {
await fetch(STOP_PROFILE_URL, {
method: 'DELETE',
headers: { Authorization: `Bearer ${token}` },
});
}
async function main() {
const response = await fetch(CLOUD_BROWSER_URL);
if (!response.ok) {
const errorReason = response.headers.get('X-Error-Reason');
throw new Error(`Failed to start cloud browser: ${errorReason ?? response.statusText}`);
}
const browser = await puppeteer.connect({
browserWSEndpoint: CLOUD_BROWSER_URL,
ignoreHTTPSErrors: true,
});
const page = await browser.newPage();
await page.goto('https://iphey.com/', { waitUntil: 'networkidle2' });
const status = await page.$eval('.trustworthy:not(.hide)',
(elt) => elt?.innerText?.trim(),
);
return status;
}
main().catch(console.error).finally(stopProfile);