Back to App Store
App Store/ Data & Storage/ Orthogonal

Orthogonal

Orthogonal · io.pilot.orthogonal
One key, 851 paid APIs — described in English, metered per user.
Data & Storage Live on catalogue
Install
pilotctl appstore install io.pilot.orthogonal
v0.1.1
Version
7
Methods
8.7 MB
Size
shareable
Sandbox
macOS · Linux
Platforms

About Orthogonal

Orthogonal is an API marketplace / meta-API: a single key fronts 58 third-party APIs across 851 endpoints — lead & contact enrichment, work-email and phone finding, web & social scraping, AI web search, company / people / jobs data, weather, voice/phone, email inboxes, and more. You never sign up for the underlying providers and you never juggle their keys — you describe what you need, and pay Orthogonal per call. This Pilot app wraps Orthogonal's control plane behind the managed-key broker, so your agent gets one metered, keyless surface and a per-user $5 budget.

The workflow: discover → price → execute

1. Discover — orthogonal.search (the natural-language router ★). Describe the task in plain English, e.g. *"find the work email and phone for a person given their name and company"*, and get back the ranked APIs and endpoints that can do it, grouped by API with a relevance score. This is the "which API do I need?" endpoint — you don't have to know the catalog. 2. Price — orthogonal.details. Pass an {api, path} and get the full request schema (every path/query/body param, with types and required flags) and the exact price in dollars. This is the authoritative price source — search and list return null prices. 3. Execute — orthogonal.run. Call {api, path, body?, query?} and Orthogonal dispatches to the provider, returns the provider's data, and reports the exact priceCents charged. This is the only call that costs money.

orthogonal.integrate and orthogonal.list round out discovery (code snippets and full-catalog browse), and orthogonal.balance shows YOUR remaining per-user budget — all free.

What you can do (representative)

  • Contact & lead enrichment — apollo, contactout, company-enrich, peopledatalabs, coresignal, aviato, crustdata, ocean-io, influencers-club.
  • Work-email & phone finding — tomba, icypeas, contactout, company-enrich, hunter.
  • Web & AI search — serper, linkup, tavily, exa/perplexity.
  • Web & social scraping — olostep, serper-scrape, scrapecreators (107 endpoints), scrapegraphai, fiber (92 endpoints).
  • Company / firmographic / jobs data — predictleads, fantastic-jobs, openfunnel, edges, context-dev, brand-dev.
  • Weather, voice/phone, email inboxes — precip, agentphone, agentmail.

Run orthogonal.search (or orthogonal.list) for the live, complete set.

Pricing — how you're billed (true to real usage)

  • Only orthogonal.run costs money. Every discovery, pricing, and account call is free.
  • Each run is billed the target endpoint's real price, debited from your $5 per-user budget in micro-dollars. The priceCents in the run response is the exact amount charged (real cents); X-Pilot-Credits-Remaining on every response is your remaining budget in micro-dollars ($5 = 5000000).
  • Prices span $0.001 – $3.50. Distribution across the 851 endpoints: 11 free, ~612 fixed-price, 104 "dynamic" (priced only after the call). Common tiers: Basic $0.001–0.01, Standard $0.01–0.10, Premium $0.10–1.00. Cheap endpoints to start with: serper ($0.002), olostep / tomba / linkup ($0.01).
  • For a known cost up front, call orthogonal.details first. For "dynamic" endpoints the price is only knowable from the run response — so metering is done on the actual charged amount, and a single call may spend the last of your budget; after that, orthogonal.run returns 402 (the free discovery calls keep working).

Per-user budget & fair use

Each Pilot user is seeded $5 of credit on first use, metered by the broker against their signed pilot identity. When the budget is exhausted, billable runs return 402. To keep the shared master account fair, the broker also enforces a per-IP identity cap: a small number of distinct pilot identities may claim a fresh $5 from any one network, so a depleted user can't farm new budgets by minting new identities. The Orthogonal account itself is the ultimate backstop — if it runs dry, runs return 402 until it's topped up.

Good to know

  • Auth is fully managed. The orth_live_ master key lives only in the broker; the installed adapter is keyless and signs each request with your pilot identity. Nothing to configure.
  • You only ever see your own budget. The provider account is shared (no per-user sub-accounts on Orthogonal), so the broker deliberately does not expose the account-wide balance/usage/ledger. orthogonal.balance is answered by the broker from its own per-user ledger — you get your personal remaining budget (also on the X-Pilot-Credits-Remaining header), never the pooled account total.
  • Errors surface verbatim: 402 insufficient credit, 404 unknown api/path, 5xx upstream provider error, 429 rate-limited (back off).
  • orthogonal.help is the self-describing discovery contract: it lists every method with params, cost note, and latency class.

Endpoint pricing (grouped by price)

Distribution across Orthogonal's priced endpoints (604 of the 851). Only orthogonal.run bills — the price shown is charged per successful call and debited from your $5 budget.

  • █░░░░░░░░░░░░░░░░░░░░░░░ Free ($0) — 11 endpoints
  • ███████░░░░░░░░░░░░░░░░░ $0.001–0.01 — 85 endpoints
  • ████████████████████████ $0.01–0.05 — 280 endpoints
  • █████░░░░░░░░░░░░░░░░░░░ $0.05–0.20 — 64 endpoints
  • ████░░░░░░░░░░░░░░░░░░░░ $0.20–1.00 — 51 endpoints
  • █░░░░░░░░░░░░░░░░░░░░░░░ $1.00–3.50 — 9 endpoints
  • █████████░░░░░░░░░░░░░░░ Dynamic (priced after the call) — 104 endpoints

Most calls are cheap: the single most common price is $0.02 (123 endpoints), then $0.04, $0.01, and $0.03. A $5 budget covers hundreds of typical calls.

Methods · 7

orthogonal.search
★ Natural-language API router. Describe a task in plain English (prompt) and get back the ranked Orthogonal APIs + endpoints that can do it — grouped by API, each with slug, path, method and a 0–1 relevance score. FREE. Start here when you don't know which of the 851 endpoints to use, then price it with orthogonal.details and execute with orthogonal.run.
orthogonal.details
Full request schema (path/query/body params with types + required flags) AND the exact price in dollars for one endpoint. FREE. Call this before orthogonal.run to know the cost — it is the authoritative price source (prices are null in search/list). Price may be the string 'dynamic' for endpoints priced only after the call.
orthogonal.integrate
Ready-to-paste code snippets for one endpoint. FREE. format ∈ orth-sdk (default) | run-api | curl | x402-fetch | x402-python | all.
orthogonal.list
Browse the whole catalog — 58 APIs / 851 endpoints with descriptions and param schemas, paginated by limit/offset. FREE. Prices are null here; use orthogonal.details for the price of a specific endpoint.
orthogonal.run
★ Execute any of the 851 provider endpoints via a JSON payload {api, path, body?, query?} (the HTTP method is chosen automatically; body is the provider request body, query is its query-string params). THIS IS THE ONLY CALL THAT COSTS MONEY: you are billed the target endpoint's real price and it is debited from your $5 Pilot budget. The response returns priceCents (cents actually charged) alongside the provider data, and X-Pilot-Credits-Remaining shows your budget. Once your $5 is spent, run returns 402 while the free discovery calls keep working. Prices range $0.001–$3.50; 104 endpoints are 'dynamic' (priced only from the response) — check orthogonal.details first when you need the cost up front.
orthogonal.balance
YOUR remaining per-user budget on this app — returned by the broker from its own ledger as '$X.XX' plus credits_remaining (micro-USD; $5 = 5000000) and credits_seed. FREE, read-only, no upstream call. This is your personal budget, seeded at $5 on first use and debited by your own runs; the shared provider account's balance is never exposed. The same figure is on the X-Pilot-Credits-Remaining header of every response.
orthogonal.help
The self-describing discovery contract: every method with params, cost note, and latency class. Local, free, no backend call.

Full usage demo

When you need a paid third-party API (contact/lead enrichment, work-email or phone finding, web/social scraping, AI search, company/people data) but don't want to sign up for or manage that provider's key.

Run this first — Discover which API can do your task (free natural-language router) $0.00 (free)
Call
pilotctl appstore call io.pilot.orthogonal orthogonal.search '{"prompt":"find the work email for a person given their name and company"}'
{"results":[{"api":"tomba","path":"/email-finder","method":"GET","score":0.94}]}

Worked examples

Price an endpoint before you run it (free) $0.00 (free)
Call
pilotctl appstore call io.pilot.orthogonal orthogonal.details '{"api":"tomba","path":"/email-finder"}'
{"price":"$0.01","params":{...}}
Execute the endpoint (the ONLY paid call) dynamic — see cost.operations
Call
pilotctl appstore call io.pilot.orthogonal orthogonal.run '{"api":"tomba","path":"/email-finder","query":{"full_name":"Ada Lovelace","domain":"acme.com"}}'
{"data":{"email":"ada@acme.com"},"priceCents":1}

priceCents in the response is the exact amount charged; X-Pilot-Credits-Remaining is your remaining budget.

A web-search run (cheap endpoint) dynamic — see cost.operations
Call
pilotctl appstore call io.pilot.orthogonal orthogonal.run '{"api":"serper","path":"/search","body":{"q":"latest AI safety papers"}}'
{"data":{"organic":[...]},"priceCents":0.2}
Check your remaining budget (free) $0.00 (free)
Call
pilotctl appstore call io.pilot.orthogonal orthogonal.balance '{}'
{"balance":"$4.99","credits_remaining":4988000}

What it costs

$5.00 per Pilot user free budget · billed in micro-USD (1000000 = $1.00); dynamic — each run priced by the target endpoint
OperationPriceNotes
orthogonal.rundynamicbilled the target endpoint's real price; response priceCents (¢) × 10000 = micro-USD debited. Range $0.001–$3.50; 104 endpoints are 'dynamic' (priced only from the response).
orthogonal.search$0.00natural-language API router — free
orthogonal.details / integrate / list$0.00discovery, pricing and code-snippet reads — free
orthogonal.balance$0.00your per-user remaining budget — free

Discovery/pricing/balance are free; each /v1/run debits its response priceCents from your $5.00 budget (the demo's two runs total ≈$0.012). At $0 the run call returns 402 while free reads keep working.

Check balance
pilotctl appstore call io.pilot.orthogonal orthogonal.balance '{}'

Good to know

  • Only orthogonal.run costs money — search, details, integrate, list and balance are all free.
  • Prices are null in search/list; orthogonal.details is the authoritative price source — call it first.
  • 104 endpoints are 'dynamic' (priced only from the run response) — a single run can spend the last of your budget.
  • 402 Payment Required means your $5.00 is spent; free discovery calls keep working.
  • Per-IP identity cap (5): you can't farm fresh $5 budgets by minting new pilot identities.
  • run takes {api, path, body?, query?} — body is the provider request body, query its query-string params.

Next

  • io.pilot.orthogonal orthogonal.help '{}'

What’s New

v0.1.1 Latest
  • Per-user balance privacy: orthogonal.balance now shows YOUR budget, never the shared account. Dropped account-wide check/transactions/usage.
v0.1.0
  • Initial release — managed meta-API wrapper over Orthogonal (58 APIs / 851 endpoints), per-user $5 budget, NL router.

Platform Compatibility

macOS Apple Silicon
5.1 MBSupported
macOS Intel
4.9 MBSupported
Linux arm64
4.6 MBSupported
Linux amd64
4.6 MBSupported
You might also like

More in Data & Storage