# Quickstart

Get CloudBrowser up and running in less than 5 minutes! This guide will show you how to launch your first browser and start automating web tasks.

## Prerequisites

* A CloudBrowser API token (get yours at [cloudbrowser.ai](https://www.cloudbrowser.ai))
* Basic knowledge of REST APIs or one of our supported libraries

## Step 1: Get Your API Token

1. Sign up at [cloudbrowser.ai](https://www.cloudbrowser.ai)
2. Navigate to your dashboard
3. Copy your API token - you'll need it for authentication

## Step 2: Launch Your First Browser

### Using cURL (HTTP API)

```bash
curl -X POST https://production.cloudbrowser.ai/api/v1/Browser/Open \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "headless": false,
    "keepOpen": 300
  }'
```

### Using Node.js

```javascript
const response = await fetch('https://production.cloudbrowser.ai/api/v1/Browser/Open', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    headless: false,
    keepOpen: 300
  })
});

const result = await response.json();
console.log('Browser endpoint:', result.address);
```

### Using C#/.NET

```csharp
using CloudBrowserAiSharp.Puppeteer.Browser;
using CloudBrowserAiSharp.Puppeteer.Extensions;

var browser = await BrowserExtension.LaunchAsync("YOUR_API_TOKEN");
var page = await browser.FirstPage();

await page.GoToAsync("https://www.cloudbrowser.ai");
await browser.CloseAsync();
```

## Step 3: Connect to Your Browser

The API response will include an `address` field with your browser's WebSocket endpoint. Use this endpoint to connect with:

* **Puppeteer** (Node.js)
* **Playwright** (Node.js, Python, C#)
* **Selenium** (any language)
* **CDP** (Chrome DevTools Protocol)

## Example: Complete Web Automation

```javascript
const puppeteer = require('puppeteer');

// 1. Launch browser via CloudBrowser API
const response = await fetch('https://production.cloudbrowser.ai/api/v1/Browser/Open', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_TOKEN',
    'Content-Type': 'application/json'
  }
});

const { address } = await response.json();

// 2. Connect with Puppeteer
const browser = await puppeteer.connect({
  browserWSEndpoint: address
});

const page = await browser.newPage();

// 3. Automate your task
await page.goto('https://example.com');
await page.screenshot({ path: 'screenshot.png' });

// 4. Clean up
await browser.close();
```

## Next Steps

Now that you have your first browser running:

* 📚 Explore the [API Documentation](/docs/get-started/browser-management.md) for advanced configurations
* 🔮 Try [AI Functions](/docs/configurations/ai-functions.md) to process web content with AI
* 📦 Use our [client libraries](https://github.com/CloudBrowser-AI/GitBook/blob/master/libraries/README.md) for your preferred programming language
* ⚙️ Configure [proxies](/docs/configurations/use-your-own-proxies.md) and [browser settings](https://github.com/CloudBrowser-AI/GitBook/blob/master/configurations/README.md)

## Need Help?

* Check our [troubleshooting guide](https://github.com/CloudBrowser-AI/GitBook/blob/master/troubleshooting/README.md)
* Review [best practices](/docs/cloud-service/best-practices.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://cloudbrowser.gitbook.io/docs/get-started/quickstart.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
