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
ASSESSMENT
updated 1h agoEvidence-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.
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-derivedA 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
AI-generated summary. The measured data is never altered by it.
ENDPOINTS
| 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 | $0.002 | Base | USDC | ||
| POST | /qr | $0.001 | Base | USDC | |
| POST | /rerank | $0.002 | Base | USDC | |
| POST | /transform | $0.001 | Base | USDC |
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.
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.
Median across 12 endpoints. Use the selector to isolate one.
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
EMBED THIS BADGE
<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>
[](https://x402-list.com/services/busker?utm_source=badge&utm_medium=referral&utm_campaign=embed)
<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>