orthogonal

Orthogonal API Platform - Access 100+ premium APIs using the SDK, Run API, or x402 direct payment. Search, discover, and integrate APIs with simple tool calls.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "orthogonal" with this command: npx skills add 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

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Cclaw

Open-source comedy AI + video editing + poster generation. Create standup/sketch/manzai/scripts, edit videos via FFmpeg, and generate comedy posters via canv...

Registry SourceRecently Updated
General

Dlazy Seedance 1.5 Pro

Convert images into dynamic dance videos using Doubao Seedance 1.5 Pro.

Registry SourceRecently Updated
General

Pod Template Pack

Use when user needs ready-to-use POD (Print on Demand) design keywords, title templates, and listing copy. Use when creating POD product listings for TikTok,...

Registry SourceRecently Updated
General

Dlazy Mj.Imagine

Generate artistic images using Midjourney (MJ) model. Supports text-to-image.

Registry SourceRecently Updated