API Documentation

Welcome to the W3Crawler API documentation. Our REST API allows you to programmatically access our web scraping and data extraction services.

REST API

JSON-based REST API with predictable URLs

Secure

HTTPS only, Bearer token authentication

Rate Limited

Fair usage with clear rate limits

Base URL

https://api.w3crawler.com

Authentication

All API requests require authentication using a Bearer token. You can get your API key from the dashboard after logging in.

const response = await fetch('https://api.w3crawler.com/api/scrapers/ecommerce/run', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    url: 'https://example.com/products',
    options: {
      maxPages: 10,
      format: 'json'
    }
  })
});

const data = await response.json();
console.log(data);

Rate Limits

API rate limits depend on your subscription plan. Rate limit headers are included in every response.

PlanRequests/minRequests/day
Free10100
Pro10010,000
EnterpriseUnlimitedUnlimited

Authentication

POST/api/auth/register
Try it

Register a new user

POST/api/auth/login
Try it

Login and get access token

POST/api/auth/refresh
Try it

Refresh access token

POST/api/auth/logout
Try it

Logout and invalidate token

Scrapers

GET/api/scrapers
Try it

List all available scrapers

GET/api/scrapers/:id
Try it

Get scraper details

POST/api/scrapers/:id/run
Try it

Run a scraper job

GET/api/scrapers/:id/jobs
Try it

List scraper jobs

GET/api/scrapers/:id/jobs/:jobId
Try it

Get job status & results

API Services

GET/api/services
Try it

List all API services

GET/api/services/:id
Try it

Get service details

POST/api/services/:id/call
Try it

Call an API service

User & Subscriptions

GET/api/user/profile
Try it

Get user profile

PUT/api/user/profile
Try it

Update user profile

GET/api/user/subscription
Try it

Get subscription status

GET/api/user/usage
Try it

Get API usage statistics

GET/api/user/api-keys
Try it

List API keys

POST/api/user/api-keys
Try it

Create new API key

DELETE/api/user/api-keys/:id
Try it

Revoke API key