Skip to content

Commit d2ff52d

Browse files
AlexgodorojaAlex Godoroja
andauthored
catalogue: io.pilot.orthogonal v0.1.1 (#377)
catalogue: io.pilot.orthogonal v0.1.1 (rich, from R2) Co-authored-by: Alex Godoroja <alex@vulturelabs.io>
1 parent 14c88f4 commit d2ff52d

3 files changed

Lines changed: 37 additions & 43 deletions

File tree

catalogue/apps/io.pilot.orthogonal/metadata.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"id": "io.pilot.orthogonal",
44
"display_name": "Orthogonal",
55
"tagline": "One key, 851 paid APIs — described in English, metered per user",
6-
"description_md": "# Orthogonal — a catalog of paid tools and APIs, for your agent\n\nOrthogonal is an **API marketplace / meta-API**: a single key fronts **58\nthird-party APIs across 851 endpoints** — lead \u0026 contact enrichment, work-email\nand phone finding, web \u0026 social scraping, AI web search, company / people /\njobs data, weather, voice/phone, email inboxes, and more. You never sign up for\nthe underlying providers and you never juggle their keys — you describe what you\nneed, and pay Orthogonal per call. This Pilot app wraps Orthogonal's control\nplane behind the managed-key broker, so **your agent gets one metered, keyless\nsurface** and a **per-user $5 budget**.\n\n## The workflow: discover → price → execute\n\n1. **Discover — `orthogonal.search`** (the natural-language router ⭐).\n Describe the task in plain English, e.g. *\"find the work email and phone for\n a person given their name and company\"*, and get back the ranked APIs and\n endpoints that can do it, grouped by API with a relevance score. This is the\n \"which API do I need?\" endpoint — you don't have to know the catalog.\n2. **Price — `orthogonal.details`.** Pass an `{api, path}` and get the full\n request schema (every path/query/body param, with types and required flags)\n **and the exact price in dollars**. This is the authoritative price source —\n search and list return `null` prices.\n3. **Execute — `orthogonal.run`.** Call `{api, path, body?, query?}` and\n Orthogonal dispatches to the provider, returns the provider's data, and\n reports the exact `priceCents` charged. This is the **only call that costs\n money**.\n\n`orthogonal.integrate` and `orthogonal.list` round out discovery (code snippets\nand full-catalog browse), and `orthogonal.balance` / `.usage` / `.transactions`\n/ `.check` expose the account ledger — all free.\n\n## What you can do (representative)\n\n- **Contact \u0026 lead enrichment** — apollo, contactout, company-enrich,\n peopledatalabs, coresignal, aviato, crustdata, ocean-io, influencers-club.\n- **Work-email \u0026 phone finding** — tomba, icypeas, contactout, company-enrich.\n- **Web \u0026 AI search** — serper, linkup, tavily, exa/perplexity (unverified set).\n- **Web \u0026 social scraping** — olostep, serper-scrape, scrapecreators (107\n endpoints), scrapegraphai, fiber (92 endpoints).\n- **Company / firmographic / jobs data** — predictleads, fantastic-jobs,\n openfunnel, edges, context-dev, brand-dev.\n- **Weather, voice/phone, email inboxes** — precip, agentphone, agentmail.\n\nRun `orthogonal.search` (or `orthogonal.list`) for the live, complete set.\n\n## Pricing — how you're billed (true to real usage)\n\n- **Only `orthogonal.run` costs money.** Every discovery, pricing, and account\n call is **free**.\n- Each run is billed the **target endpoint's real price**, debited from your\n **$5 per-user budget** in micro-dollars. The `priceCents` in the run response\n is the exact amount charged (real cents); `X-Pilot-Credits-Remaining` on every\n response is your remaining budget in micro-dollars ($5 = 5000000).\n- Prices span **$0.001 – $3.50**. Distribution across the 851 endpoints: **11\n free, ~612 fixed-price, 104 \"dynamic\"** (priced only after the call). Common\n tiers: Basic $0.001–0.01, Standard $0.01–0.10, Premium $0.10–1.00. Cheap\n endpoints to start with: serper ($0.002), olostep / tomba / linkup ($0.01).\n- For a **known** cost up front, call `orthogonal.details` first. For\n **\"dynamic\"** endpoints the price is only knowable from the run response — so\n metering is done on the actual charged amount, and a single call may spend the\n last of your budget; after that, `orthogonal.run` returns **402** (the free\n discovery calls keep working).\n\n## Per-user budget \u0026 fair use\n\nEach Pilot user is seeded **$5 of credit** on first use, metered by the broker\nagainst their signed pilot identity. When the budget is exhausted, billable runs\nreturn 402. To keep the shared master account fair, the broker also enforces a\n**per-IP identity cap**: a small number of distinct pilot identities may claim a\nfresh $5 from any one network, so a depleted user can't farm new budgets by\nminting new identities. The Orthogonal account itself is the ultimate backstop —\nif it runs dry, runs return 402 until it's topped up.\n\n## Good to know\n\n- **Auth is fully managed.** The `orth_live_` master key lives only in the\n broker; the installed adapter is keyless and signs each request with your\n pilot identity. Nothing to configure.\n- **The account is shared** across Pilot users (no per-user sub-accounts on\n Orthogonal), so `orthogonal.balance` / `.usage` / `.transactions` report the\n **account-wide** figures — your **personal** remaining budget is the\n `X-Pilot-Credits-Remaining` header.\n- Errors surface verbatim: 402 insufficient credit, 404 unknown api/path, 5xx\n upstream provider error, 429 rate-limited (back off).\n- `orthogonal.help` is the self-describing discovery contract: it lists every\n method with params, cost note, and latency class.\n",
6+
"description_md": "# Orthogonal — a catalog of paid tools and APIs, for your agent\n\nOrthogonal is an **API marketplace / meta-API**: a single key fronts **58\nthird-party APIs across 851 endpoints** — lead & contact enrichment, work-email\nand phone finding, web & social scraping, AI web search, company / people /\njobs data, weather, voice/phone, email inboxes, and more. You never sign up for\nthe underlying providers and you never juggle their keys — you describe what you\nneed, and pay Orthogonal per call. This Pilot app wraps Orthogonal's control\nplane behind the managed-key broker, so **your agent gets one metered, keyless\nsurface** and a **per-user $5 budget**.\n\n## The workflow: discover → price → execute\n\n1. **Discover — `orthogonal.search`** (the natural-language router ⭐).\n Describe the task in plain English, e.g. *\"find the work email and phone for\n a person given their name and company\"*, and get back the ranked APIs and\n endpoints that can do it, grouped by API with a relevance score. This is the\n \"which API do I need?\" endpoint — you don't have to know the catalog.\n2. **Price — `orthogonal.details`.** Pass an `{api, path}` and get the full\n request schema (every path/query/body param, with types and required flags)\n **and the exact price in dollars**. This is the authoritative price source —\n search and list return `null` prices.\n3. **Execute — `orthogonal.run`.** Call `{api, path, body?, query?}` and\n Orthogonal dispatches to the provider, returns the provider's data, and\n reports the exact `priceCents` charged. This is the **only call that costs\n money**.\n\n`orthogonal.integrate` and `orthogonal.list` round out discovery (code snippets\nand full-catalog browse), and `orthogonal.balance` / `.usage` / `.transactions`\n/ `.check` expose the account ledger — all free.\n\n## What you can do (representative)\n\n- **Contact & lead enrichment** — apollo, contactout, company-enrich,\n peopledatalabs, coresignal, aviato, crustdata, ocean-io, influencers-club.\n- **Work-email & phone finding** — tomba, icypeas, contactout, company-enrich.\n- **Web & AI search** — serper, linkup, tavily, exa/perplexity (unverified set).\n- **Web & social scraping** — olostep, serper-scrape, scrapecreators (107\n endpoints), scrapegraphai, fiber (92 endpoints).\n- **Company / firmographic / jobs data** — predictleads, fantastic-jobs,\n openfunnel, edges, context-dev, brand-dev.\n- **Weather, voice/phone, email inboxes** — precip, agentphone, agentmail.\n\nRun `orthogonal.search` (or `orthogonal.list`) for the live, complete set.\n\n## Pricing — how you're billed (true to real usage)\n\n- **Only `orthogonal.run` costs money.** Every discovery, pricing, and account\n call is **free**.\n- Each run is billed the **target endpoint's real price**, debited from your\n **$5 per-user budget** in micro-dollars. The `priceCents` in the run response\n is the exact amount charged (real cents); `X-Pilot-Credits-Remaining` on every\n response is your remaining budget in micro-dollars ($5 = 5000000).\n- Prices span **$0.001 – $3.50**. Distribution across the 851 endpoints: **11\n free, ~612 fixed-price, 104 \"dynamic\"** (priced only after the call). Common\n tiers: Basic $0.001–0.01, Standard $0.01–0.10, Premium $0.10–1.00. Cheap\n endpoints to start with: serper ($0.002), olostep / tomba / linkup ($0.01).\n- For a **known** cost up front, call `orthogonal.details` first. For\n **\"dynamic\"** endpoints the price is only knowable from the run response — so\n metering is done on the actual charged amount, and a single call may spend the\n last of your budget; after that, `orthogonal.run` returns **402** (the free\n discovery calls keep working).\n\n## Per-user budget & fair use\n\nEach Pilot user is seeded **$5 of credit** on first use, metered by the broker\nagainst their signed pilot identity. When the budget is exhausted, billable runs\nreturn 402. To keep the shared master account fair, the broker also enforces a\n**per-IP identity cap**: a small number of distinct pilot identities may claim a\nfresh $5 from any one network, so a depleted user can't farm new budgets by\nminting new identities. The Orthogonal account itself is the ultimate backstop —\nif it runs dry, runs return 402 until it's topped up.\n\n## Good to know\n\n- **Auth is fully managed.** The `orth_live_` master key lives only in the\n broker; the installed adapter is keyless and signs each request with your\n pilot identity. Nothing to configure.\n- **The account is shared** across Pilot users (no per-user sub-accounts on\n Orthogonal), so `orthogonal.balance` / `.usage` / `.transactions` report the\n **account-wide** figures — your **personal** remaining budget is the\n `X-Pilot-Credits-Remaining` header.\n- Errors surface verbatim: 402 insufficient credit, 404 unknown api/path, 5xx\n upstream provider error, 429 rate-limited (back off).\n- `orthogonal.help` is the self-describing discovery contract: it lists every\n method with params, cost note, and latency class.\n",
77
"vendor": {
88
"name": "Orthogonal",
99
"url": "https://orthogonal.com",
@@ -34,7 +34,7 @@
3434
"natural-language"
3535
],
3636
"size": {
37-
"bundle_bytes": 5076601,
37+
"bundle_bytes": 5073695,
3838
"installed_bytes": 9137279
3939
},
4040
"compat": {

catalogue/catalogue.json

Lines changed: 34 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -539,46 +539,6 @@
539539
"metadata_sha256": "9756ef368b02f9808596dc8c640776ba079cdf6119bd334f00efe7d53a1b42d8",
540540
"publisher": "ed25519:ebjc66COLR1OBuDZn9gCuePChW8Qxxcxm7RDYAgSLv8="
541541
},
542-
{
543-
"id": "io.pilot.orthogonal",
544-
"version": "0.1.0",
545-
"description": "Connect your agent to Orthogonal — one key fronting 58 paid APIs / 851 endpoints (lead & contact enrichment, email & phone finding, web & social scraping, AI search, company/people/jobs data, weather, voice). Describe a task in plain English and Orthogonal's router returns the exact APIs to call; execute any of them through a single run, billed at the real per-call price and metered against a per-user $5 budget. Discovery, pricing and balance calls are free.",
546-
"display_name": "Orthogonal",
547-
"vendor": "Orthogonal",
548-
"license": "MIT",
549-
"source_url": "https://github.com/pilot-protocol/app-template/tree/main/submissions/io.pilot.orthogonal",
550-
"bundle_url": "https://pub-f09f9a4ea848491198d48e329ba030e3.r2.dev/bundles/io.pilot.orthogonal/0.1.0/io.pilot.orthogonal-0.1.0-linux-amd64.tar.gz",
551-
"bundle_sha256": "a773c017d0f9b4498db2123473541dece29b8367a34387d52ca5abc7c2932c7e",
552-
"bundle_size": 5076601,
553-
"bundles": {
554-
"darwin/amd64": {
555-
"bundle_url": "https://pub-f09f9a4ea848491198d48e329ba030e3.r2.dev/bundles/io.pilot.orthogonal/0.1.0/io.pilot.orthogonal-0.1.0-darwin-amd64.tar.gz",
556-
"bundle_sha256": "55a0645bbf8506040d88231e392bc43c517385f64875e1718090b403bf05809b"
557-
},
558-
"darwin/arm64": {
559-
"bundle_url": "https://pub-f09f9a4ea848491198d48e329ba030e3.r2.dev/bundles/io.pilot.orthogonal/0.1.0/io.pilot.orthogonal-0.1.0-darwin-arm64.tar.gz",
560-
"bundle_sha256": "404cc4588b38e5eb2341cad160b07d39a34f6ca7dd7f4cdaafc56e03dd54bfcd"
561-
},
562-
"linux/amd64": {
563-
"bundle_url": "https://pub-f09f9a4ea848491198d48e329ba030e3.r2.dev/bundles/io.pilot.orthogonal/0.1.0/io.pilot.orthogonal-0.1.0-linux-amd64.tar.gz",
564-
"bundle_sha256": "a773c017d0f9b4498db2123473541dece29b8367a34387d52ca5abc7c2932c7e"
565-
},
566-
"linux/arm64": {
567-
"bundle_url": "https://pub-f09f9a4ea848491198d48e329ba030e3.r2.dev/bundles/io.pilot.orthogonal/0.1.0/io.pilot.orthogonal-0.1.0-linux-arm64.tar.gz",
568-
"bundle_sha256": "2882a4db3250bb0e3e63ee1f3d7746eadad823b9e1c6bebf8aa96b8c1f18e9a9"
569-
}
570-
},
571-
"categories": [
572-
"data",
573-
"search",
574-
"enrichment",
575-
"scraping",
576-
"ai"
577-
],
578-
"metadata_url": "https://raw.githubusercontent.com/pilot-protocol/pilotprotocol/main/catalogue/apps/io.pilot.orthogonal/metadata.json",
579-
"metadata_sha256": "e3094041d1bc38841c7fe82ce7596b409dbed25f8a81722a5456898b7360d554",
580-
"publisher": "ed25519:8zcpGtp5sUw3sjLptDR9W/btumEaOv3DO3tTWN/+PCk="
581-
},
582542
{
583543
"id": "io.pilot.agentphone",
584544
"version": "0.3.0",
@@ -644,6 +604,40 @@
644604
}
645605
},
646606
"publisher": "ed25519:W1qwuLpHlwdOlisnk7RdzP4zO2IbNKUFz7Saa69AgTA="
607+
},
608+
{
609+
"id": "io.pilot.orthogonal",
610+
"version": "0.1.1",
611+
"description": "Connect your agent to Orthogonal — one key fronting 58 paid APIs / 851 endpoints (lead & contact enrichment, email & phone finding, web & social scraping, AI search, company/people/jobs data, weather, voice). Describe a task in plain English and Orthogonal's router returns the exact APIs to call; execute any of them through a single run, billed at the real per-call price and metered against a per-user $5 budget. Discovery, pricing and balance calls are free.",
612+
"bundle_url": "https://pub-f09f9a4ea848491198d48e329ba030e3.r2.dev/bundles/io.pilot.orthogonal/0.1.1/io.pilot.orthogonal-0.1.1-linux-amd64.tar.gz",
613+
"bundle_sha256": "3f2c9bfc009e41898b36ff2e88a313c0c3bc8bb39500f9673572a1d40b84fac7",
614+
"display_name": "Orthogonal",
615+
"vendor": "Orthogonal",
616+
"categories": [],
617+
"bundle_size": 5073695,
618+
"source_url": "https://github.com/pilot-protocol/app-template/tree/main/submissions/io.pilot.orthogonal",
619+
"license": "",
620+
"metadata_url": "https://raw.githubusercontent.com/pilot-protocol/pilotprotocol/main/catalogue/apps/io.pilot.orthogonal/metadata.json",
621+
"metadata_sha256": "6a584e8c637da3e6f2ffeb9b71cbca1d2f05122511b0c45ff72b126d52363da5",
622+
"bundles": {
623+
"linux/amd64": {
624+
"bundle_url": "https://pub-f09f9a4ea848491198d48e329ba030e3.r2.dev/bundles/io.pilot.orthogonal/0.1.1/io.pilot.orthogonal-0.1.1-linux-amd64.tar.gz",
625+
"bundle_sha256": "3f2c9bfc009e41898b36ff2e88a313c0c3bc8bb39500f9673572a1d40b84fac7"
626+
},
627+
"linux/arm64": {
628+
"bundle_url": "https://pub-f09f9a4ea848491198d48e329ba030e3.r2.dev/bundles/io.pilot.orthogonal/0.1.1/io.pilot.orthogonal-0.1.1-linux-arm64.tar.gz",
629+
"bundle_sha256": "e1d70fa3f9b49f3d2d92717b63db4ac84b525d24bd7c102ce64de62beb57a6f6"
630+
},
631+
"darwin/amd64": {
632+
"bundle_url": "https://pub-f09f9a4ea848491198d48e329ba030e3.r2.dev/bundles/io.pilot.orthogonal/0.1.1/io.pilot.orthogonal-0.1.1-darwin-amd64.tar.gz",
633+
"bundle_sha256": "dbfdd6624a04a9fa6cdec86c9b5cfad1cdb3fda455bd58eeae6e03d59b4e9305"
634+
},
635+
"darwin/arm64": {
636+
"bundle_url": "https://pub-f09f9a4ea848491198d48e329ba030e3.r2.dev/bundles/io.pilot.orthogonal/0.1.1/io.pilot.orthogonal-0.1.1-darwin-arm64.tar.gz",
637+
"bundle_sha256": "25bb06edfca365b201fd137c46cb06a340c8df98ec43181d57f7214c555a55e9"
638+
}
639+
},
640+
"publisher": "ed25519:8zcpGtp5sUw3sjLptDR9W/btumEaOv3DO3tTWN/+PCk="
647641
}
648642
]
649643
}

catalogue/catalogue.json.sig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
bUYNmQV4nz85UaQoaGro1hCZPAu3skb6JcnJyjbWGTEGbFXDscGZ4pmytai/40sAqhYfFFORLJnUT3yiKciNBg==
1+
B6SUaeQm3AZVEbi38wFVVeCMz5/+LvNkrpdaYSUVtfMqeFTF184zjCYg18L6ijqZLx+F3n5fY61bzCq6sZf/Cw==

0 commit comments

Comments
 (0)