Authentication
All profile endpoints require an API key withtask:create permission.
Base URL
List Profiles
Returns all profiles for the authenticated user, sorted by newest first.Response Fields
| Field | Type | Description |
|---|---|---|
_id | string | Unique profile identifier |
userId | string | Owner’s user ID |
name | string | Profile name |
description | string | Profile description |
blobSize | number | Size of profile data in bytes |
blobUploadedAt | string | ISO 8601 timestamp of last upload |
lastUsedAt | string | ISO 8601 timestamp of last session usage |
usageCount | number | Number of times used in sessions |
status | string | Profile status: empty, uploading, or ready |
createdAt | string | ISO 8601 creation timestamp |
updatedAt | string | ISO 8601 last update timestamp |
Create Profile
Creates a new empty profile. You can populate it by uploading data or by running a session with the profile attached.Request Body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Profile name (max 100 characters) |
description | string | No | Profile description (max 500 characters) |
Errors
| Status | Message | Cause |
|---|---|---|
| 400 | Profile name is required | Missing or empty name field |
| 400 | Maximum of 20 profiles allowed | User already has 20 profiles |
Delete Profile
Permanently deletes a profile and its stored browser data.Parameters
| Parameter | Location | Description |
|---|---|---|
id | URL path | The profile ID |
Errors
| Status | Message | Cause |
|---|---|---|
| 404 | Profile not found | Invalid ID or profile belongs to another user |
Download Profile Data
Returns a temporary signed URL to download the profile’s browser data as a.tar.gz archive. The URL expires after 1 hour.
Parameters
| Parameter | Location | Description |
|---|---|---|
id | URL path | The profile ID |
downloadUrl to download the file directly:
Errors
| Status | Message | Cause |
|---|---|---|
| 400 | Profile has no data to download | Profile status is not ready or has no uploaded data |
| 404 | Profile not found | Invalid ID or profile belongs to another user |
Upload Profile Data
Uploads browser profile data as a.tar.gz archive. Replaces any existing data on the profile.
Parameters
| Parameter | Location | Description |
|---|---|---|
id | URL path | The profile ID |
file | Form field | The .tar.gz file (max 500 MB) |
.tar.gz, .tgz
Errors
| Status | Message | Cause |
|---|---|---|
| 400 | No file provided | Missing file field in form data |
| 400 | Only .tar.gz files are allowed | File is not a valid tar.gz archive |
| 404 | Profile not found | Invalid ID or profile belongs to another user |
Profile Status Values
| Status | Description |
|---|---|
empty | Created but has no browser data |
uploading | Data upload in progress |
ready | Has browser data and can be used in sessions |
Rate Limits
Profile endpoints share the server’s global rate limit of 100 requests per 15 minutes per IP.Common Error Responses
All error responses follow this format:| Status | Message | Cause |
|---|---|---|
| 401 | API key required | Missing Authorization header |
| 401 | Invalid or revoked API key | API key is incorrect or has been revoked |
| 403 | Account is deactivated | User account is disabled |
| 403 | API key missing required permission: task:create | API key lacks the task:create permission |
| 500 | Authentication error | Server-side authentication failure |
Related
Related