orthogonal

Verified·Scanned 2/17/2026

This skill provides SDK and HTTP examples for calling the Orthogonal API platform at https://api.orth.sh/v1 and related endpoints. It instructs storing ORTHOGONAL_API_KEY and PRIVATE_KEY in environment variables and contains curl/fetch examples that call https://api.orth.sh and https://x402.orth.sh.

from clawhub.ai·v1.0.0·5.4 KB·0 installs
Scanned from 1.0.0 at cd5a2d0 · Transparency log ↗
$ vett add clawhub.ai/christianpickettcode/orthogonal

Orthogonal Platform

Orthogonal is a platform for monetizing and consuming APIs. Use these tools to discover, understand, and call any API on the platform.

Base URL: https://api.orth.sh/v1

Authentication

Get your API key at https://orthogonal.com/dashboard/settings

export ORTHOGONAL_API_KEY=orth_live_your_api_key

Tools

1. search

Search for APIs using natural language. Returns a lightweight list of matching endpoints.

Endpoint: POST /v1/search

curl -X POST 'https://api.orth.sh/v1/search' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"prompt": "scrape websites", "limit": 10}'

Parameters:

  • prompt (string, required): Natural language description of what you're looking for
  • limit (number, optional): Max results (default: 10, max: 50)

Response: List of matching APIs with endpoints (name, description, method, path, price)


2. get_details

Get full details about a specific endpoint including all parameters.

Endpoint: POST /v1/details

curl -X POST 'https://api.orth.sh/v1/details' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api": "olostep", "path": "/v1/scrapes"}'

Parameters:

  • api (string, required): API slug from search results (e.g., "olostep", "linkup")
  • path (string, required): Endpoint path from search results (e.g., "/v1/scrapes")

Response: Full endpoint details including:

  • Path parameters
  • Query parameters (name, type, required, description)
  • Body parameters (name, type, required, description)
  • Pricing information
  • Documentation URL

3. integrate

Get ready-to-use code snippets for integrating an endpoint.

Endpoint: POST /v1/integrate

curl -X POST 'https://api.orth.sh/v1/integrate' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"api": "olostep", "path": "/v1/scrapes", "format": "orth-sdk"}'

Parameters:

  • api (string, required): API slug
  • path (string, required): Endpoint path
  • format (string, optional): Code format - one of:
    • orth-sdk (default) - Orthogonal SDK (@orth/sdk)
    • run-api - Direct HTTP to /v1/run
    • x402-fetch - x402 payment with JavaScript
    • x402-python - x402 payment with Python
    • curl - cURL command
    • all - All formats

Response: Code snippets ready to copy-paste


4. use (run)

Call an API endpoint using your Orthogonal credits.

Endpoint: POST /v1/run

curl -X POST 'https://api.orth.sh/v1/run' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "api": "olostep",
    "path": "/v1/scrapes",
    "body": {
      "url_to_scrape": "https://example.com"
    }
  }'

Parameters:

  • api (string, required): API slug
  • path (string, required): Endpoint path
  • query (object, optional): Query parameters
  • body (object, optional): Request body

Response:

{
  "success": true,
  "price": 0.01,
  "data": { /* API response */ }
}

5. list_all (optional)

List all discoverable APIs with their endpoints. Returns paginated APIs, each containing their endpoints. Use sparingly - prefer search for specific needs.

Endpoint: GET /v1/list-endpoints

curl 'https://api.orth.sh/v1/list-endpoints?limit=100' \
  -H 'Authorization: Bearer $ORTHOGONAL_API_KEY'

Parameters:

  • limit (number, optional): Max APIs to return per page (default: 100, max: 500)
  • offset (number, optional): Pagination offset for APIs

Response: List of APIs, each with nested endpoints array


Typical Workflow

  1. Search for what you need: POST /v1/search with natural language
  2. Get details for the endpoint: POST /v1/details to see required params
  3. Use the endpoint: POST /v1/run with the params

Or for integration:

  1. SearchGet detailsIntegrate to get code snippets

SDK Integration

For the simplest integration, use the Orthogonal SDK:

npm install @orth/sdk
import Orthogonal from "@orth/sdk";

const orthogonal = new Orthogonal({
  apiKey: process.env.ORTHOGONAL_API_KEY,
});

// Search for APIs
const search = await orthogonal.search("web scraping");

// Call an API
const result = await orthogonal.run({
  api: "olostep",
  path: "/v1/scrapes",
  body: { url_to_scrape: "https://example.com" }
});

x402 Direct Payment

Pay directly with USDC on Base blockchain - no API key required:

import { wrapFetchWithPayment } from "x402-fetch";
import { privateKeyToAccount } from "viem/accounts";

const account = privateKeyToAccount(process.env.PRIVATE_KEY);
const fetchWithPayment = wrapFetchWithPayment(fetch, account);

const response = await fetchWithPayment(
  "https://x402.orth.sh/olostep/v1/scrapes",
  {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({ url_to_scrape: "https://example.com" })
  }
);

Support