Skip to main content

What is the Scraping API?

The Scraping API by 55 Tech lets you route HTTP, WebSocket, and AMQP requests through a network of 80+ geo-distributed agents. Within seconds, the API automatically identifies the most reliable agents for each target — so your requests become instantly more successful without managing proxies yourself. What you can do:
  • HTTP fetch — GET/POST/PUT/PATCH/DELETE with full header, body, and cookie control
  • WebSocket relay — Bidirectional frame relay (Socket.IO, SignalR, Centrifugo, GraphQL-WS, raw WebSocket)
  • AMQP consumer — Stream RabbitMQ messages via Server-Sent Events (SSE)
  • Geo targeting — Pin requests to specific countries or individual agents
  • Block detection — Responses include a meta.blocked flag when access restrictions are detected

Base URL

https://scraping-api.55-tech.com

Authentication

Pass your API key via the X-API-Key header or (for WebSocket/AMQP) the apiKey body field. See Authentication for details.

Endpoints

EndpointMethodAuthDescription
/fetchGET, POST, PUT, PATCH, DELETERequiredProxy HTTP requests through the agent network
/wsWebSocketIn connect messageBidirectional WebSocket relay
/amqpPOSTIn body or headerAMQP/RabbitMQ consumer relay (SSE stream)
/usageGETRequiredPer-key usage metrics (requests, bytes, top domains)
/network/agentsGETRequiredList all agents with slug, name, country
/network/statusGETRequiredNetwork summary (total nodes, nodes per country)
/network/geoGETRequiredAgents grouped by country
/network/health/{domain}GETRequiredPer-agent health state for a domain
/debug/pickGETRequiredPreview which agent would be selected
/healthzGETNoLiveness probe

Control headers

These headers control routing and are stripped before forwarding to the target:
HeaderAliasesDescriptionExample
X-Target-URLTarget URL (no encoding needed, recommended)https://example.com/?foo=bar
X-GeoX-Geo-CC, X-Geo-Strict, X-CC, X-CountryRestrict to specific countries (comma-separated ISO codes)US,DE,AT
X-Expect-JSONHint that the target response is JSON1
X-AgentRoute through specific agent(s) by slug or comma-separated listde1, de1,at5,us3
X-TimeoutOverride request timeout in seconds60

Rate limiting

Rate limits are per API key:
  • Default: 10 requests/second
  • WebSocket connections consume 1 token on connect (not per frame)
When rate limited, the API returns 429 with headers:
Retry-After: 1
X-RateLimit-Limit: 10
X-RateLimit-Remaining: 0
Check your current usage with GET /usage.

Fetch response format

All HTTP fetch responses follow this structure:
{
  "meta": {
    "status": 200,
    "final_url": "https://example.com/",
    "http_version": "HTTP/2",
    "elapsed_ms": 245,
    "blocked": false,
    "headers": { "content-type": "text/html" },
    "agent": { "id": "scraping-de1" },
    "bytes": 4521
  },
  "raw": "<!DOCTYPE html>...",
  "raw_json": null
}
FieldDescription
meta.statusHTTP status code from the target
meta.final_urlFinal URL after redirects
meta.http_versionHTTP version used (e.g. HTTP/2)
meta.elapsed_msRound-trip time in milliseconds
meta.blockedtrue if access restrictions were detected in the response
meta.agent.idNode that served the request (e.g. scraping-de1)
meta.bytesResponse body size in bytes
rawResponse body as text (when not JSON)
raw_jsonParsed JSON object (when response is valid JSON, otherwise null)

Next steps

Authentication

Set up your API key.

Quickstart

Make your first proxied request.