curl -X GET "https://browsepilot.ai/api/profiles" \
  -H "x-api-key: your-workspace-id"
[
  {
    "id": "profile_abc123xyz",
    "name": "Personal Browser",
    "workspaceId": "workspace_456def",
    "description": "Profile for personal browsing and social media",
    "settings": {
      "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",
      "viewport": {
        "width": 1920,
        "height": 1080
      },
      "proxy": null
    },
    "createdAt": "2024-01-15T10:30:00.000Z",
    "updatedAt": "2024-01-20T14:45:00.000Z"
  },
  {
    "id": "profile_def456abc",
    "name": "Work Account",
    "workspaceId": "workspace_456def",
    "description": "Profile for work-related automation",
    "settings": {
      "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36",
      "viewport": {
        "width": 1440,
        "height": 900
      },
      "proxy": "http://corporate-proxy:8080"
    },
    "createdAt": "2024-01-10T08:15:00.000Z",
    "updatedAt": "2024-01-18T12:30:00.000Z"
  }
]

GET /api/profiles

Retrieve all browser profiles associated with your workspace. Browser profiles allow you to maintain separate browser identities with unique cookies, settings, and configurations.

Headers

x-api-key
string
required
Your workspace ID from Browsepilot Settings → Advanced

Response

Returns an array of browser profile objects.
[]
array
Array of browser profile objects
curl -X GET "https://browsepilot.ai/api/profiles" \
  -H "x-api-key: your-workspace-id"
[
  {
    "id": "profile_abc123xyz",
    "name": "Personal Browser",
    "workspaceId": "workspace_456def",
    "description": "Profile for personal browsing and social media",
    "settings": {
      "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",
      "viewport": {
        "width": 1920,
        "height": 1080
      },
      "proxy": null
    },
    "createdAt": "2024-01-15T10:30:00.000Z",
    "updatedAt": "2024-01-20T14:45:00.000Z"
  },
  {
    "id": "profile_def456abc",
    "name": "Work Account",
    "workspaceId": "workspace_456def",
    "description": "Profile for work-related automation",
    "settings": {
      "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36",
      "viewport": {
        "width": 1440,
        "height": 900
      },
      "proxy": "http://corporate-proxy:8080"
    },
    "createdAt": "2024-01-10T08:15:00.000Z",
    "updatedAt": "2024-01-18T12:30:00.000Z"
  }
]

Using Profiles in Conversations

Once you have profile IDs, use them when starting conversations:
// First, get available profiles
const profilesResponse = await fetch("https://browsepilot.ai/api/profiles", {
  headers: { "x-api-key": apiKey },
});
const profiles = await profilesResponse.json();

// Use a specific profile for automation
const workProfile = profiles.find((p) => p.name === "Work Account");

// Start conversation with that profile
const chatResponse = await fetch("https://browsepilot.ai/api/chat", {
  method: "POST",
  headers: {
    "x-api-key": apiKey,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    prompt: "Check my LinkedIn messages",
    profileId: workProfile.id,
  }),
});
Profile Benefits: - Isolation: Keep different accounts and cookies separate - Consistency: Maintain same fingerprint across sessions - Efficiency: Pre-configured settings reduce setup time - Organization: Easily manage multiple use cases

Error Handling

Status CodeErrorDescription
401UnauthorizedMissing or invalid x-api-key header
404UnauthorizedWorkspace not found for provided API key
500Internal server errorUnexpected server error occurred

Profile Management

Currently, browser profiles must be created through the Browsepilot dashboard. API endpoints for creating and managing profiles programmatically are coming soon. To create profiles:
  1. Open Browsepilot Dashboard
  2. Click the Manage button
  3. Click New Profile
  4. Configure settings and save