Skip to main content

Overview

Orthogonal is an API gateway and skill catalog for AI agents. You sign up once, fund a single account, and call any catalogued API — including every ScrapeGraph v2 endpoint — through a unified Run API, a TypeScript SDK, a CLI, an MCP server, or x402 stablecoin payments. No separate SGAI_API_KEY is required when calling ScrapeGraph through Orthogonal — your orth_live_… key is enough.

Official Orthogonal Documentation

Reference for every Orthogonal endpoint, SDK, CLI command, and MCP tool
When should you use Orthogonal? Reach for Orthogonal when your agent needs more than just ScrapeGraph — e.g. scraping plus lead enrichment, email finding, or sending outreach — and you’d rather manage one key, one balance, and one usage dashboard. If you only call ScrapeGraph endpoints, the native scrapegraph-py SDK is the most direct path.

Why call ScrapeGraph through Orthogonal

  • One key, many APIs. Combine ScrapeGraph with the rest of the Orthogonal catalog (Apollo, Hunter, Sixtyfour, …) in a single agent without per-vendor signups.
  • Pay-per-use credits or x402. Top up a balance, or pay providers directly with USDC on Base via x402. No subscription required.
  • Native discovery. POST /v1/search finds endpoints by natural-language description; POST /v1/details returns the full parameter schema.
  • Agent-ready surfaces. Drop-in TypeScript SDK, CLI, and MCP server — pick whichever matches your stack.

Setup

  1. Create an account at orthogonal.com — new accounts include $5 of free credit.
  2. Generate an API key in Dashboard → API Keys (orth_live_… for production, orth_test_… for development).
  3. Export it:
That’s it — there’s no separate ScrapeGraph key to configure.

ScrapeGraph endpoints exposed through Orthogonal

These map onto ScrapeGraph’s v2 API (https://v2-api.scrapegraphai.com/api/*). If you previously called smartscraper, markdownify, or searchscraper directly, see the v1 → v2 transition guide. Run orth api scrapegraph (CLI) or POST /v1/list-endpoints for the live, authoritative list and current pricing.

Three ways to call ScrapeGraph

1. Orthogonal SDK (@orth/sdk)

The TypeScript SDK wraps Orthogonal’s Run API.
The same pattern works for every ScrapeGraph endpoint — just change path and body. For asynchronous endpoints like /v1/crawl, poll GET /v1/crawl/{task_id} (also via orthogonal.run) until the job reaches a terminal state.
ScrapeGraph v2 uses url and prompt (not website_url and user_prompt). For Markdown output, call /v1/scrape with formats: [{ type: "markdown" }].

2. Orthogonal CLI (orth)

The CLI is ideal for one-off scrapes, ad-hoc research, and shell pipelines.
The CLI returns the exact same JSON shape as the SDK, so output piping into jq or another tool works without translation.

3. x402 — pay-per-use with stablecoins

ScrapeGraph endpoints are also reachable through Orthogonal’s x402 gateway at https://x402.orth.sh/scrapegraph/<path>. Settlement is on Base (USDC); no pre-paid Orthogonal balance is required. The flow is the standard HTTP 402 protocol: your first request gets a 402 Payment Required with payment requirements, the client signs a payment authorization with your wallet, and the request is retried with an X-Payment header.
Install:

Discovering and inspecting endpoints

Orthogonal exposes the same metadata your agent needs to construct valid requests at runtime:
The format field on /v1/integrate accepts orth-sdk, run-api, curl, x402-fetch, x402-python, or all.

MCP server

Orthogonal hosts an MCP server at https://mcp.orth.sh so Claude, Cursor, OpenClaw, or any MCP-compatible client can call ScrapeGraph directly without writing glue code. Register it in your client’s MCP config:
Once installed the agent gets four tools — search, get_details, integrate, and use. Calling use with { api: "scrapegraph", path: "/v1/extract", body: {...} } runs the same call as the SDK example above. See the Orthogonal MCP setup guide for client-specific configuration.

Response shape

Every Orthogonal call (SDK, CLI, or /v1/run) returns the same envelope:
On failure (e.g. insufficient credits, returned with HTTP 402):
A 402 HTTP status indicates the balance is too low — top up via the dashboard or switch the call to the x402 gateway above.

Resources