x402 List

x402 Protocol Service Directory

Busker

Content

Content-to-context toolkit for AI agents, live on Base mainnet. Twelve deterministic pay-per-call tools: HTML to markdown (~80-85% token reduction), PDF to markdown, OCR for scanned PDFs, structured JSON extraction, RAG chunking, sentence embeddings, cross-encoder reranking, URL fetch-and-clean, JSON/YAML/CSV/XML conversion, QR generation, image ops, and object detection. $0.001-$0.01 USDC per call, settled via CDP. Machine-readable discovery at /.well-known/x402, /openapi.json and /llms.txt.

Pay from $0.001 to $0.01 per request in USDC on Base, settled onchain via the x402 protocol, no signup, no API key needed.

listed 2026-08-03 · no on-chain settlement recorded yet

BASE URL https://workbot1.oddsys.org WEBSITE https://workbot1.oddsys.org ENDPOINTS 12 NETWORK Base ASSET USDC MEMBER SINCE 2026-08-03 MONITORED SINCE 2026-08-03

ASSESSMENT

updated 1h ago

Evidence-backed signals, not a single score. Click any chip for the proof. Measured values stay read-only; unknown is honest.

reliability 100%
uptime 24h
-
uptime 7d
-
uptime 30d
-
uptime 90d
-
response p95
-
avg response
-
total checks
0
compliance unknown

x402 compliance not evaluated yet.

jump to compliance checklist

price $0.001 to $0.01 (p10 in Content)
price (min)
$0.001
price (max)
$0.01
category percentile (min)
p10 in Content
category percentile (max)
p30 in Content
endpoints / prices
12 / 4
model
tiered
stability
100%
risk clean

No deterministic risk flag. Risk fires only on an exact blocklist match, or a reserved-brand name with a mismatched verified payTo. Never from low uptime, a high price, or a model guess.

domain age
4126d
registrar
Name106, Inc.
hosting
custom
domain created
2015-04-17

Identity facts, not a risk score.

traction $0 30d · 0 buyers
volume 30d
$0
buyers 30d
0
settlements 30d
0
first settlement
---
last settlement
---
top buyer share
-
trend 7d vs 30d
-
networks
eip155:8453
volume all-time
$0
settlements all-time
0
median settlement 30d
$0
max settlement 30d
$0
settled via
-

Conservative undercount: only USDC settlements via facilitators we measure are counted. A measured floor, not an estimate.

Top buyer share is a concentration signal, not part of the ranking score.

WHAT IT DOES

ai-derived

A content processing service that handles various data transformations including text chunking, conversion, detection, embedding, extraction, fetching, image processing, OCR, PDF handling, QR code operations, reranking, and general transformations.

category
content-processing
in
body
text-processingimage-processingpdf-processingocrembeddingextractionconversiondetection

AI-generated summary. The measured data is never altered by it.

ENDPOINTS

Service endpoints with HTTP method, path, description, pricing, and network
METHOD PATH DESCRIPTION PRICE NETWORK ASSET
POST /chunk $0.001 Base USDC
POST /convert $0.001 Base USDC
POST /detect $0.01 Base USDC
POST /embed $0.002 Base USDC
POST /extract $0.002 Base USDC
POST /fetch $0.005 Base USDC
POST /image $0.002 Base USDC
POST /ocr $0.01 Base USDC
POST /pdf $0.002 Base USDC
POST /qr $0.001 Base USDC
POST /rerank $0.002 Base USDC
POST /transform $0.001 Base USDC
12 endpoints

REQUEST / RESPONSE EXAMPLE

An unpaid request to POST /chunk returns HTTP 402 with the payment terms. Settle onchain via your facilitator, then retry with the X-Payment header.

// request
curl -i -X POST 'https://workbot1.oddsys.org/chunk'
// 402 response (captured by monitor) · 12 payloads · click to expand
[
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "2000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/rerank",
      "tags": [
        "rerank",
        "reranking",
        "rag",
        "search",
        "relevance",
        "cross-encoder",
        "retrieval"
      ],
      "mimeType": "application/json",
      "description": "Rerank candidate texts against a query with a cross-encoder (ms-marco-MiniLM-L-6-v2): joint query+document scoring, much sharper than cosine similarity over embeddings. Returns ranked indices with 0-1 relevance scores. Up to 64 texts per call. Pairs with /embed for a recall-then-precision RAG pipeline.",
      "serviceName": "Busker Reranker"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "topK": 5,
              "query": "how do x402 payments settle?",
              "texts": [
                "first candidate passage",
                "second candidate passage"
              ]
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "meta": {
                "topK": "number",
                "count": "number",
                "model": "string",
                "inferenceMs": "number",
                "totalTokens": "number"
              },
              "results": "array of { index: number, score: number 0-1, text?: string }, best first"
            },
            "example": {
              "meta": {
                "topK": 2,
                "count": 5,
                "model": "ms-marco-minilm-l6-v2",
                "inferenceMs": 180,
                "totalTokens": 512
              },
              "results": [
                {
                  "index": 3,
                  "score": 0.982
                },
                {
                  "index": 0,
                  "score": 0.417
                }
              ]
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "query",
                    "texts"
                  ],
                  "properties": {
                    "topK": {
                      "type": "integer",
                      "description": "Return only the best K results (default: all, ranked)."
                    },
                    "query": {
                      "type": "string",
                      "description": "The search query to rank against."
                    },
                    "texts": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "1-64 candidate texts to rerank (each pair truncated at 256 tokens)."
                    },
                    "returnTexts": {
                      "type": "boolean",
                      "description": "Include the text of each result (default false: indices only)."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/rerank"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/transform",
      "tags": [
        "html",
        "markdown",
        "extraction",
        "context-compression",
        "scraping"
      ],
      "mimeType": "application/json",
      "description": "Convert raw HTML into clean markdown. Typically cuts page tokens by 80-85% before they hit an LLM context window.",
      "serviceName": "RemoteSight HTML→Markdown"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "html": ""
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "meta": {
                "inputBytes": "number",
                "outputChars": "number",
                "estInputTokens": "number",
                "estOutputTokens": "number"
              },
              "title": "string|null",
              "markdown": "string",
              "extracted": "boolean"
            },
            "example": {
              "meta": {
                "inputBytes": 1256,
                "outputChars": 68,
                "estInputTokens": 314,
                "estOutputTokens": 17
              },
              "title": "Example Domain",
              "markdown": "# Example Domain\n\nThis domain is for use in documentation examples.",
              "extracted": false
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "html"
                  ],
                  "properties": {
                    "url": {
                      "type": "string",
                      "description": "Optional source URL of the page; improves extraction."
                    },
                    "html": {
                      "type": "string",
                      "description": "Raw HTML document to convert to markdown."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/transform"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "2000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/pdf",
      "tags": [
        "pdf",
        "markdown",
        "extraction",
        "document",
        "context-compression"
      ],
      "mimeType": "application/json",
      "description": "Extract clean markdown text from a PDF (text-layer PDFs; no OCR). Turns a document an agent can't cheaply read into compact tokens.",
      "serviceName": "RemoteSight PDF→Markdown"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "pdfBase64": ""
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "meta": {
                "inputBytes": "number",
                "outputChars": "number",
                "estInputTokens": "number",
                "processedPages": "number",
                "estOutputTokens": "number"
              },
              "pages": "number",
              "markdown": "string"
            },
            "example": {
              "meta": {
                "inputBytes": 84213,
                "outputChars": 5120,
                "estInputTokens": 21053,
                "processedPages": 4,
                "estOutputTokens": 1280
              },
              "pages": 4,
              "markdown": "# Quarterly Report\n\nRevenue grew 12% year over year..."
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "pdfBase64"
                  ],
                  "properties": {
                    "pdfBase64": {
                      "type": "string",
                      "description": "Base64-encoded PDF file (text-layer PDFs; no OCR)."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/pdf"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "10000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/ocr",
      "tags": [
        "ocr",
        "pdf",
        "scanned",
        "extraction",
        "document",
        "tesseract"
      ],
      "mimeType": "application/json",
      "description": "OCR a scanned PDF into clean text (Tesseract, English, machine-printed documents). Up to 25 pages per call. PDFs that turn out to have a text layer are extracted the fast way at the same price.",
      "serviceName": "RemoteSight PDF OCR"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "maxPages": 10,
              "pdfBase64": ""
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "meta": {
                "method": "string",
                "truncated": "boolean",
                "inputBytes": "number",
                "totalPages": "number",
                "outputChars": "number",
                "processedPages": "number",
                "estOutputTokens": "number"
              },
              "pages": "number",
              "markdown": "string"
            },
            "example": {
              "meta": {
                "method": "ocr",
                "truncated": false,
                "inputBytes": 412876,
                "totalPages": 2,
                "outputChars": 1840,
                "processedPages": 2,
                "estOutputTokens": 460
              },
              "pages": 2,
              "markdown": "INVOICE\n\nAcme Supply Co.\n\nItem Qty Price\nWidgets 12 $48.00"
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "pdfBase64"
                  ],
                  "properties": {
                    "maxPages": {
                      "type": "number",
                      "description": "Pages to OCR from the start of the document (1-25, default 10)."
                    },
                    "pdfBase64": {
                      "type": "string",
                      "description": "Base64-encoded PDF file (scanned/image PDFs; machine-printed text, English)."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/ocr"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "2000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/extract",
      "tags": [
        "html",
        "extraction",
        "metadata",
        "json-ld",
        "schema.org",
        "scraping"
      ],
      "mimeType": "application/json",
      "description": "Extract structured JSON from a web page: title, byline, publish date, Open Graph/meta tags, embedded JSON-LD (schema.org), links, and images. Deterministic, no LLM.",
      "serviceName": "RemoteSight Structured Extract"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "html": ""
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "meta": "object",
              "text": "string",
              "links": "array",
              "title": "string|null",
              "byline": "string|null",
              "images": "array",
              "jsonLd": "array",
              "excerpt": "string|null",
              "siteName": "string|null",
              "wordCount": "number",
              "publishedTime": "string|null"
            },
            "example": {
              "meta": {
                "og:type": "article",
                "description": "A practical guide to widgets."
              },
              "text": "Widgets are useful components...",
              "links": [
                {
                  "href": "https://example.com/docs",
                  "text": "docs"
                }
              ],
              "title": "Understanding Widgets",
              "byline": "Jane Doe",
              "images": [
                {
                  "alt": "widget",
                  "src": "https://example.com/hero.png"
                }
              ],
              "jsonLd": [
                {
                  "@type": "Article",
                  "headline": "Understanding Widgets"
                }
              ],
              "excerpt": "A practical guide to widgets.",
              "siteName": "Example Blog",
              "wordCount": 850,
              "publishedTime": "2026-01-15T10:00:00Z"
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "html"
                  ],
                  "properties": {
                    "url": {
                      "type": "string",
                      "description": "Optional source URL; resolves relative links/images."
                    },
                    "html": {
                      "type": "string",
                      "description": "Raw HTML document to extract structure from."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/extract"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/chunk",
      "tags": [
        "chunking",
        "rag",
        "text",
        "embeddings",
        "context"
      ],
      "mimeType": "application/json",
      "description": "Split a document into token-bounded chunks at natural boundaries (paragraphs/sentences), with optional overlap. Ready-to-embed pieces for RAG, no tokens spent on the splitting logic.",
      "serviceName": "RemoteSight RAG Chunker"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "text": "",
              "maxTokens": 512,
              "overlapTokens": 0
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "meta": {
                "maxTokens": "number",
                "inputChars": "number",
                "totalChunks": "number",
                "overlapTokens": "number",
                "estInputTokens": "number"
              },
              "chunks": "array"
            },
            "example": {
              "meta": {
                "maxTokens": 512,
                "inputChars": 3930,
                "totalChunks": 2,
                "overlapTokens": 0,
                "estInputTokens": 983
              },
              "chunks": [
                {
                  "text": "First chunk of the document...",
                  "chars": {
                    "end": 1920,
                    "start": 0
                  },
                  "index": 0,
                  "estTokens": 480,
                  "overlapped": false
                },
                {
                  "text": "Second chunk...",
                  "chars": {
                    "end": 3930,
                    "start": 1920
                  },
                  "index": 1,
                  "estTokens": 502,
                  "overlapped": false
                }
              ]
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "text"
                  ],
                  "properties": {
                    "text": {
                      "type": "string",
                      "description": "The document text to split into chunks."
                    },
                    "maxTokens": {
                      "type": "number",
                      "description": "Target max tokens per chunk (32–8000, default 512)."
                    },
                    "overlapTokens": {
                      "type": "number",
                      "description": "Trailing tokens overlapped into each chunk (default 0)."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/chunk"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/convert",
      "tags": [
        "convert",
        "json",
        "yaml",
        "csv",
        "xml",
        "data"
      ],
      "mimeType": "application/json",
      "description": "Convert data between JSON, YAML, CSV, and XML. Deterministic format juggling done off-context, with edge cases handled.",
      "serviceName": "RemoteSight Format Convert"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "to": "yaml",
              "data": "",
              "from": "json"
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "to": "string",
              "from": "string",
              "meta": {
                "inputChars": "number",
                "outputChars": "number"
              },
              "result": "string"
            },
            "example": {
              "to": "json",
              "from": "csv",
              "meta": {
                "inputChars": 22,
                "outputChars": 40
              },
              "result": "[\n  { \"name\": \"Ada\", \"role\": \"eng\" }\n]"
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "data",
                    "from",
                    "to"
                  ],
                  "properties": {
                    "to": {
                      "enum": [
                        "json",
                        "yaml",
                        "csv",
                        "xml"
                      ],
                      "type": "string",
                      "description": "Target format."
                    },
                    "data": {
                      "type": "string",
                      "description": "The source document as text."
                    },
                    "from": {
                      "enum": [
                        "json",
                        "yaml",
                        "csv",
                        "xml"
                      ],
                      "type": "string",
                      "description": "Source format."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/convert"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/qr",
      "tags": [
        "qr",
        "qrcode",
        "image",
        "png",
        "svg",
        "generation"
      ],
      "mimeType": "application/json",
      "description": "Generate a QR code from text as PNG (base64) or SVG. Custom module size, quiet-zone margin, and hex colours. Deterministic, capacity-capped at 2953 bytes.",
      "serviceName": "Busker QR Generator"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "dark": "#000000",
              "text": "",
              "light": "#ffffff",
              "scale": 4,
              "format": "png",
              "margin": 2
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "svg": "string (svg) | absent (png)",
              "meta": {
                "scale": "number",
                "margin": "number",
                "pixels": "number",
                "modules": "number",
                "inputBytes": "number"
              },
              "format": "string",
              "dataBase64": "string (png) | absent (svg)"
            },
            "example": {
              "meta": {
                "dark": "#000000",
                "light": "#ffffff",
                "scale": 4,
                "margin": 2,
                "pixels": 116,
                "modules": 25,
                "inputBytes": 23,
                "outputBytes": 412,
                "errorCorrection": "M"
              },
              "format": "png",
              "dataBase64": "iVBORw0KGgoAAAANSUhEUgAA…"
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "text"
                  ],
                  "properties": {
                    "dark": {
                      "type": "string",
                      "description": "Hex colour of the data modules (default #000000)."
                    },
                    "text": {
                      "type": "string",
                      "description": "Content to encode (max 2953 bytes utf8 — QR capacity)."
                    },
                    "light": {
                      "type": "string",
                      "description": "Hex colour of the background (default #ffffff)."
                    },
                    "scale": {
                      "type": "number",
                      "description": "Pixels per QR module, PNG only (1-20, default 4)."
                    },
                    "format": {
                      "enum": [
                        "png",
                        "svg"
                      ],
                      "type": "string",
                      "description": "Output format (default png)."
                    },
                    "margin": {
                      "type": "number",
                      "description": "Quiet-zone width in modules (0-16, default 2)."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/qr"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "2000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/image",
      "tags": [
        "image",
        "resize",
        "crop",
        "greyscale",
        "convert",
        "png",
        "jpeg",
        "webp"
      ],
      "mimeType": "application/json",
      "description": "Modify an image in one call: crop, resize, convert to greyscale, and re-encode (PNG/JPEG/WebP) — applied in that order, any combination. Deterministic, no upscaling surprises.",
      "serviceName": "Busker Image Tools"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "format": "jpeg",
              "resize": {
                "width": 512
              },
              "quality": 80,
              "greyscale": false,
              "imageBase64": ""
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "meta": {
                "width": "number",
                "height": "number",
                "inputWidth": "number",
                "operations": "array",
                "inputHeight": "number",
                "outputBytes": "number"
              },
              "format": "string",
              "dataBase64": "string"
            },
            "example": {
              "meta": {
                "width": 512,
                "height": 288,
                "inputBytes": 482113,
                "inputWidth": 1920,
                "operations": [
                  "resize",
                  "encode:jpeg"
                ],
                "inputFormat": "png",
                "inputHeight": 1080,
                "outputBytes": 18342
              },
              "format": "jpeg",
              "dataBase64": "/9j/4AAQSkZJRg…"
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "imageBase64"
                  ],
                  "properties": {
                    "crop": {
                      "type": "object",
                      "required": [
                        "width",
                        "height"
                      ],
                      "properties": {
                        "top": {
                          "type": "number"
                        },
                        "left": {
                          "type": "number"
                        },
                        "width": {
                          "type": "number"
                        },
                        "height": {
                          "type": "number"
                        }
                      },
                      "description": "Crop region in source pixels; applied first."
                    },
                    "format": {
                      "enum": [
                        "png",
                        "jpeg",
                        "webp"
                      ],
                      "type": "string",
                      "description": "Output encoding (default: source format)."
                    },
                    "resize": {
                      "type": "object",
                      "properties": {
                        "fit": {
                          "type": "string"
                        },
                        "width": {
                          "type": "number"
                        },
                        "height": {
                          "type": "number"
                        }
                      },
                      "description": "Target size; fit: cover|contain|fill|inside|outside (default inside)."
                    },
                    "quality": {
                      "type": "number",
                      "description": "JPEG/WebP quality 1-100 (default 80)."
                    },
                    "greyscale": {
                      "type": "boolean",
                      "description": "Convert to greyscale."
                    },
                    "imageBase64": {
                      "type": "string",
                      "description": "Base64-encoded source image (png/jpeg/webp/gif/tiff)."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/image"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "10000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/detect",
      "tags": [
        "detection",
        "vision",
        "image",
        "people",
        "vehicles",
        "pets",
        "yolox",
        "counting"
      ],
      "mimeType": "application/json",
      "description": "Detect and locate objects in an image (YOLOX-nano, COCO classes): people, pets (dog/cat/horse), vehicles, and 70+ more. Returns per-class counts and pixel bounding boxes. Detection only — no identification. Best on clear, medium-to-large objects.",
      "serviceName": "Busker Object Detection"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "classes": [
                "person"
              ],
              "imageBase64": "",
              "minConfidence": 0.4
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "meta": {
                "model": "string",
                "width": "number",
                "height": "number",
                "inferenceMs": "number"
              },
              "counts": "object (class -> count)",
              "objects": "array of { class, confidence, box: {x, y, width, height} } in source pixels"
            },
            "example": {
              "meta": {
                "model": "yolox-nano",
                "width": 1920,
                "height": 1080,
                "inputBytes": 348211,
                "inferenceMs": 1450,
                "classesFilter": null,
                "minConfidence": 0.4
              },
              "counts": {
                "dog": 1,
                "person": 2
              },
              "objects": [
                {
                  "box": {
                    "x": 412,
                    "y": 108,
                    "width": 143,
                    "height": 388
                  },
                  "class": "person",
                  "confidence": 0.87
                },
                {
                  "box": {
                    "x": 655,
                    "y": 121,
                    "width": 130,
                    "height": 371
                  },
                  "class": "person",
                  "confidence": 0.81
                },
                {
                  "box": {
                    "x": 220,
                    "y": 340,
                    "width": 180,
                    "height": 160
                  },
                  "class": "dog",
                  "confidence": 0.63
                }
              ]
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "imageBase64"
                  ],
                  "properties": {
                    "classes": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "Restrict results to these COCO class names (e.g. person, dog, cat, horse, car, bus, truck, motorcycle, bicycle). Omit for all 80 classes."
                    },
                    "imageBase64": {
                      "type": "string",
                      "description": "Base64-encoded image (png/jpeg/webp)."
                    },
                    "minConfidence": {
                      "type": "number",
                      "description": "Score threshold 0.05-0.95 (default 0.4)."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/detect"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "2000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/embed",
      "tags": [
        "embeddings",
        "vector",
        "rag",
        "semantic-search",
        "minilm",
        "nlp"
      ],
      "mimeType": "application/json",
      "description": "Generate sentence embeddings (all-MiniLM-L6-v2, 384-dim, mean-pooled + L2-normalized) for up to 96 texts per call. Drop-in compatible with any all-MiniLM-L6-v2 index. Pairs with /chunk for a complete RAG pipeline.",
      "serviceName": "Busker Embeddings"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "texts": [
                "first passage",
                "second passage"
              ]
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "meta": {
                "count": "number",
                "model": "string",
                "dimensions": "number",
                "inferenceMs": "number",
                "totalTokens": "number"
              },
              "embeddings": "array of float arrays (384-dim, L2-normalized)"
            },
            "example": {
              "meta": {
                "count": 1,
                "model": "all-minilm-l6-v2",
                "dimensions": 384,
                "normalized": true,
                "inferenceMs": 34,
                "totalTokens": 9
              },
              "embeddings": [
                [
                  0.021,
                  -0.043,
                  0.118,
                  "…381 more"
                ]
              ]
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "properties": {
                    "text": {
                      "type": "string",
                      "description": "Convenience: a single text instead of the texts array."
                    },
                    "texts": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "1-96 texts to embed (each truncated at 256 tokens)."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/embed"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
        "amount": "5000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://workbot1.oddsys.org/fetch",
      "tags": [
        "fetch",
        "scraping",
        "url",
        "markdown",
        "web",
        "context-compression"
      ],
      "mimeType": "application/json",
      "description": "Fetch a public web page and return clean markdown (or structured JSON) — URL in, agent-ready content out, typically 80-85% fewer tokens than raw HTML. Handles redirects and compression.",
      "serviceName": "Busker Fetch & Clean"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "url": "https://example.com/article",
              "format": "markdown"
            },
            "type": "http",
            "method": "POST",
            "bodyType": "json"
          },
          "output": {
            "body": {
              "meta": {
                "inputBytes": "number",
                "outputChars": "number",
                "estInputTokens": "number",
                "estOutputTokens": "number"
              },
              "title": "string|null",
              "source": {
                "url": "string (final URL after redirects)",
                "bytes": "number",
                "httpStatus": "number"
              },
              "markdown": "string",
              "extracted": "boolean"
            },
            "example": {
              "meta": {
                "inputBytes": 1256,
                "outputChars": 68,
                "estInputTokens": 314,
                "estOutputTokens": 17
              },
              "title": "Example Domain",
              "source": {
                "url": "https://example.com/",
                "bytes": 1256,
                "httpStatus": 200
              },
              "markdown": "# Example Domain\n\nThis domain is for use in documentation examples.",
              "extracted": false
            },
            "bodyType": "json"
          }
        },
        "schema": {
          "properties": {
            "input": {
              "type": "object",
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "properties": {
                "body": {
                  "type": "object",
                  "required": [
                    "url"
                  ],
                  "properties": {
                    "url": {
                      "type": "string",
                      "description": "Public http/https URL of the page to fetch."
                    },
                    "format": {
                      "enum": [
                        "markdown",
                        "extract"
                      ],
                      "type": "string",
                      "description": "markdown (default) = clean prose; extract = structured JSON (title, byline, meta, JSON-LD, links)."
                    }
                  },
                  "additionalProperties": false
                },
                "type": {
                  "type": "string",
                  "const": "http"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "bodyType": {
                  "enum": [
                    "json"
                  ],
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          }
        },
        "routeTemplate": "/fetch"
      }
    },
    "x402Version": 2
  }
]

OVER TIME

All charts share the 30d window selected here. Every series is also served as JSON at /api/v1/services/busker/price, /scores, /volume and /buyers. On-chain volume and distinct buyers are measured over the service's settlement address and are a conservative undercount (only settlements that reach a measured facilitator are counted). The on-chain series roll up hourly, so the latest day can be up to about an hour behind; distinct buyers are counted per payout address, so a service that settles to more than one address is an upper bound.

UPTIME
08-03 · uptime 100.0% · 564ms avg08-0308-03
30d UPTIME 100%
RESPONSE TIME
08-03 · 564ms avg08-03 · 564ms avg08-0308-03
AVG RESP 578ms
PRICE (captured 402, USD)
building price history ($0.002)

Median across 12 endpoints. Use the selector to isolate one.

SUB-SCORES (uptime + x402 compliance)
building assessment history
VOLUME (on-chain settlement, USD)
building volume history (1 day so far)
DISTINCT BUYERS
building buyer history (1 day so far)

COMPLIANCE

not evaluated
  • 402 payload captured
  • accepts[] array present
  • payTo address recoverable
  • payTo at accepts[0].payTo (conformant shape)
  • payTo is a valid on-chain address
  • atomic price declared
  • atomic price in a sane range
  • asset (token) address declared
  • network resolves to CAIP-2
  • payment scheme declared
  • served over HTTPS
  • declares the current x402 version (2)
  • EIP-712 domain parameters present on every EVM entry
  • x402 v2 envelope delivered in the payment-required header

SITE PILLARS

  • homepage reachable
  • openapi doc
  • pricing page
  • llms.txt
  • robots.txt
  • terms page
recent checks (6) · click to expand
TIME STATUS RESP
● OK 518ms
● OK 626ms
● OK 520ms
● OK 676ms
● OK 581ms
● OK 547ms

EMBED THIS BADGE

Show that Busker is monitored on x402-list. Paste this on your site or README, it links back to this live listing.

Busker listed on x402-list
status
Busker uptime on x402-list
live uptime
// HTML
<a href="https://x402-list.com/services/busker?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/busker.svg" alt="Busker listed on x402-list" height="28">
</a>
// Markdown
[![Busker on x402-list](https://x402-list.com/badge/busker.svg)](https://x402-list.com/services/busker?utm_source=badge&utm_medium=referral&utm_campaign=embed)
// HTML · live uptime variant
<a href="https://x402-list.com/services/busker?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/busker.svg?data=uptime" alt="Busker uptime on x402-list" height="28">
</a>

RUN THIS SERVICE?

Keep this listing accurate: propose changes to the name, description, website, category or add new endpoints to monitor. Ownership is verified with a domain proof and every change is reviewed manually; measured data stays read-only.

[ update this listing ]