API Endpoints Reference
A complete reference for all FourA API endpoints, including request parameters and response formats.
Base URL
All API requests use the following base URL:
https://eu.api.foura.ai/api/v1
Authentication
Every request requires a Bearer token in the Authorization header:
curl https://eu.api.foura.ai/api/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY"
You can find your API key in the Dashboard under Settings.
Create a Task
POST /tasks
Creates a new data collection task.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
url |
string | Yes | Target URL to collect data from |
type |
string | Yes | Task type: single, browser, or proxy |
options |
object | No | Additional options (see below) |
Task Types
- single: Fast HTTP request using curl-impersonate. Best for static pages and APIs.
- browser: Headless Chrome via Puppeteer. Handles JavaScript-rendered content.
- proxy: Multi-proxy rotation with automatic retry. Best for protected targets.
Options
| Field | Type | Default | Description |
|---|---|---|---|
waitFor |
string | - | CSS selector to wait for (browser type only) |
timeout |
number | 30000 | Request timeout in milliseconds |
proxyCountry |
string | - | Two-letter country code for geo-targeting |
javascript |
boolean | false | Enable JS rendering for single type |
headers |
object | - | Custom request headers |
Example Request
curl -X POST https://eu.api.foura.ai/api/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/products",
"type": "browser",
"options": {
"waitFor": ".product-list",
"timeout": 15000
}
}'
Example Response
{
"id": "task_a1b2c3d4",
"status": "completed",
"url": "https://example.com/products",
"type": "browser",
"statusCode": 200,
"content": "<html>...</html>",
"headers": { "content-type": "text/html" },
"timing": {
"total": 2340,
"dns": 45,
"connect": 120,
"ttfb": 890
},
"createdAt": "2026-03-31T10:15:00Z"
}
List Tasks
GET /tasks
Returns your recent tasks with pagination.
Query Parameters
| Param | Type | Default | Description |
|---|---|---|---|
limit |
number | 20 | Results per page (max 100) |
offset |
number | 0 | Pagination offset |
status |
string | - | Filter by status: completed, failed, pending |
Example
curl https://eu.api.foura.ai/api/v1/tasks?limit=10&status=completed \
-H "Authorization: Bearer YOUR_API_KEY"
Get Task
GET /tasks/:id
Retrieve a specific task by ID.
curl https://eu.api.foura.ai/api/v1/tasks/task_a1b2c3d4 \
-H "Authorization: Bearer YOUR_API_KEY"
Usage Statistics
GET /usage
Returns your current usage stats for the billing period.
curl https://eu.api.foura.ai/api/v1/usage \
-H "Authorization: Bearer YOUR_API_KEY"
Response
{
"period": "2026-03",
"tasksUsed": 1250,
"tasksLimit": 10000,
"bandwidthMB": 340.5
}
HTTP Status Codes
| Code | Meaning |
|---|---|
| 200 | Success |
| 201 | Task created |
| 400 | Invalid request parameters |
| 401 | Missing or invalid API key |
| 429 | Rate limit exceeded |
| 500 | Internal server error |
Next Steps
- Authentication: Get your API key
- Error Handling: Handle errors gracefully
- Quick Start: Your first request in 30 seconds