io.github.webberdesign/webbersites-x402-data-api
REMOTE · API.WEBBERSITES.COM · SCANNED AUG 3
45 pay-per-call AI agent tools: scraping, SEO, crypto data, lint, agent memory. x402 USDC on Base.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security74
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability66
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 12957 tokens (~166/item across 78 items; 78 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage99
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 98% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · api.webbersites.com
claude mcp add --transport http webberdesign-webbersites-x402-data-api https://api.webbersites.com/mcp
[mcp_servers.webberdesign-webbersites-x402-data-api] url = "https://api.webbersites.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"webberdesign-webbersites-x402-data-api": {
"type": "remote",
"url": "https://api.webbersites.com/mcp",
"enabled": true
}
}
} openclaw mcp add webberdesign-webbersites-x402-data-api --url https://api.webbersites.com/mcp --transport streamable-http
mcp_servers:
webberdesign-webbersites-x402-data-api:
url: "https://api.webbersites.com/mcp" {
"mcpServers": {
"webberdesign-webbersites-x402-data-api": {
"type": "http",
"url": "https://api.webbersites.com/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Jul 26 +3
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 29 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.
- 28 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.
- 27 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 65
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://api.webbersites.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=api.webbersites.com | CN=WE1,O=Google Trust Services,C=US | 30 Jun 2026 | 28 Sept 2026 | ECDSA 256 | ECDSA-SHA256 | 5984c778fb06215a0e6ba34fb536c042 |
| SANs: api.webbersites.com | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
DNSSEC insecure
Validation of api.webbersites.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| webbersites.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://api.webbersites.com/mcp | Verified | 200 | |
| http (plaintext) | http://api.webbersites.com/mcp | HTTPS enforced | 301 | https://api.webbersites.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
post_calc_finance ~248
Exact financial + token math. POST {op:…}: compound (growth with per-period contributions), amortize (payment, total interest, schedule), npv, irr (deterministic bisection) — and token_units: exact decimal↔base-unit conversion via BigInt for any token decimals (ETH 18, USDC 6), the 18-decimal math that float64 silently corrupts. Iterative series computed exactly, never guessed. ($0.005 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| amount | string | — | token_units — decimal or base-unit string |
| cashflows | array | — | npv/irr — period 0 first |
| contribution_per_period | number | — | — |
| decimals | number | — | token_units — ETH 18, USDC 6 |
| op | string | yes | compound | amortize | npv | irr | token_units |
| periods_per_year | number | — | default 12 |
| principal | number | — | — |
| rate | number | — | annual %, e.g. 6.5 |
| to | string | — | token_units — base | decimal |
| years | number | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| base_units | string | — | — |
| decimal | string | — | — |
| future_value | number | — | — |
| irr_pct | number | — | — |
| npv | number | — | — |
| op | string | — | — |
| payment_per_period | number | — | — |
| schedule | array | — | — |
| total_interest | number | — | — |
No examples provided.
post_calc_stats ~198
Exact descriptive statistics — LLMs cannot reliably sum 200 numbers; this can. POST {values:[…]} for count/sum/mean/median/stddev/percentiles; {x:[],y:[]} for Pearson correlation + linear regression; {rows:[…], field} for object arrays — or {collection, field?} to run stats DIRECTLY ON YOUR DATASTORE collection (the paying wallet is the identity; reading extends its life 30 days). Up to 100k values, Kahan-summed. ($0.005 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| collection | string | — | run stats on YOUR datastore collection instead of posting data |
| field | string | — | — |
| rows | array | — | objects — with field/fields to pick columns |
| values | array | — | numbers to describe |
| x | array | — | with y: correlation + regression |
| y | array | — | — |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | — | — |
| max | number | — | — |
| mean | number | — | — |
| median | number | — | — |
| min | number | — | — |
| pearson_r | number | — | — |
| percentiles | object | — | — |
| regression | object | — | — |
| stddev | number | — | — |
| sum | number | — | — |
| variance | number | — | — |
No examples provided.
post_chat ~163
Agent Helpdesk LIVE CHAT — talk to the operator's assistant about this API. $0.001 per message buys an LLM reply that knows the whole catalog, and a human operator is notified and reads every thread — feature requests and bug reports reach a person. We build tools agents need, on demand. Body: {message, session?, agent?}; pass the returned 'session' back to continue a conversation (kept ~1 hour). Replies are capped at ~150 words. ($0.001 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| agent | string | — | Your agent handle (optional) |
| message | string | yes | Your chat message, up to 500 characters |
| session | string | — | Session id from a previous reply — continues that conversation |
| Name | Type | Req | Description |
|---|---|---|---|
| reply | string | — | — |
| session | string | — | — |
| turn | number | — | — |
No examples provided.
post_data_convert ~288
Deterministic data-format conversion — the shape work an LLM cannot do reliably token-by-token. POST {data, from, to}: JSON, NDJSON, CSV, TSV, or a SQL INSERT dump in; any of the same out. Handles RFC 4180 quoting (commas, quotes, newlines in values), flattens nested objects to dot-notation columns, unions ragged records into a stable column set, and parses SQL string literals with '' and \' escapes. No AI, no network — same input, same bytes, every time. ($0.005 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| data | string | yes | The dataset as a string (up to ~4MB) |
| delimiter | string | — | Override the delimiter for csv/tsv |
| flatten | boolean | — | Flatten nested objects to dot-notation columns (default true) |
| from | string | — | json (default), ndjson, csv, tsv, or sql |
| header | boolean | — | CSV/TSV input has a header row (default true) |
| infer_types | boolean | — | Convert numeric/boolean/null strings on input (default true); leading zeros stay strings |
| table | string | — | Table name when to=sql (default 'data') |
| to | string | — | csv (default), tsv, json, ndjson, or sql |
| Name | Type | Req | Description |
|---|---|---|---|
| bytes | number | — | — |
| columns | array | — | — |
| from | string | — | — |
| output | string | — | — |
| rows | number | — | — |
| to | string | — | — |
No examples provided.
post_debug_code ~199
LLM CODE DEBUGGING — POST {code, error} and get a diagnosis: what is wrong, the root cause, and a concrete fix with corrected code. Paste the failing snippet plus the error message or stack trace; any language, up to 20,000 chars combined. Optional {language} and {context} ('happens only on the second call'). Fast cheap LLM under the hood. Want deterministic no-AI lint instead? POST /api/lint/:language ($0.002). ($0.01 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| code | string | yes | The failing code snippet (required) |
| context | string | — | Optional extra context: what you expected, when it happens, what you tried |
| error | string | — | Error message, stack trace, or a description of the wrong behavior |
| language | string | — | Optional language hint, e.g. python, javascript, elixir |
| Name | Type | Req | Description |
|---|---|---|---|
| confidence | string | — | high, medium, or low |
| diagnosis | string | — | what is wrong, in plain language |
| fix | string | — | the concrete change to make |
| fixed_code | string | — | corrected version of the snippet, when applicable |
| model | string | — | — |
| root_cause | string | — | — |
| usage | object | — | — |
No examples provided.
post_describe_image ~202
IMAGE DESCRIPTION (vision AI) — POST {url} or {image_base64} and get back what is IN the image: a detailed description, notable objects, visible text transcribed, colors, and style. Or ask a specific {question} about the image ('what error is on this screen?'). PNG/JPEG/GIF/WebP up to 5 MB. For agents without eyes: alt text, screenshot triage, image search and moderation. Fast vision model; the x402 payment IS the auth. ($0.02 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| image_base64 | string | — | Alternative to url: the image as base64 (data URI accepted) |
| question | string | — | Optional specific question about the image, up to 500 chars — replaces the default full description |
| url | string | — | Public http(s) URL of the image (png, jpeg, gif, webp; max 5 MB) |
| Name | Type | Req | Description |
|---|---|---|---|
| content_type | string | — | — |
| description | string | — | the answer — full description, or the answer to your question |
| input_bytes | number | — | — |
| model | string | — | — |
| usage | object | — | — |
No examples provided.
post_extract_custom ~216
CUSTOM EXTRACTION — POST {content, schema} and get structured JSON back. Define fields as {"company":"string","total":"number","due_date":"date"} (types or plain-language descriptions) and the engine pulls them from any unstructured text: emails, invoices, job posts, resumes, chat logs. Missing fields return null — never invented. Content up to 16,000 chars, 40 fields max. Parsing a PDF/DOCX/CSV by URL first? GET /api/extract ($0.02). ($0.01 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | The unstructured text to extract from, up to 16,000 characters |
| instructions | string | — | Optional extra guidance, e.g. 'dates are DD/MM/YYYY in this document' |
| schema | object | yes | Fields to extract: {name: type-or-description}. Types: string, number, boolean, date, string[], number[] — or a plain-language description ('the total in USD') |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | — | one key per schema field; null where the content had no answer |
| missing | array | — | names of fields that came back null |
| model | string | — | — |
| usage | object | — | — |
No examples provided.
post_generate_image ~341
AI IMAGE GENERATION — POST {prompt} and get back a PNG, base64 in JSON (?raw=1 for raw bytes). Gemini 2.5 Flash Image (nano-banana): photoreal scenes, illustrations, product shots, UI mockups — renders text in images well. Optional {aspect_ratio}: 1:1 (default), 16:9, 9:16, 4:3 + 6 more. Reference images: pass {url} or {image_base64}, or up to 3 in {reference_images}, to edit, restyle, or compose ('put this product on this beach'). The x402 payment IS the auth. ($0.07 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| aspect_ratio | string | — | 1:1 (default), 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, or 21:9 |
| image_base64 | string | — | Alternative to url: a reference image as base64 (data URI accepted) |
| prompt | string | yes | What to generate, up to 2,000 chars — subject, style, composition, lighting |
| reference_images | array | — | Up to 3 reference images (URLs or base64 strings, 6 MB combined) to compose — product placement, style transfer, character consistency |
| url | string | — | Optional public URL of a reference image to edit/restyle instead of generating from scratch (png, jpeg, gif, webp; max 5 MB) |
| Name | Type | Req | Description |
|---|---|---|---|
| bytes | number | — | — |
| content_type | string | — | — |
| image_base64 | string | — | the generated image as base64 — decode and save |
| mode | string | — | generate or edit |
| model | string | — | — |
| usage | object | — | — |
No examples provided.
post_icon_generate ~266
Icon generator: pick a Font Awesome Free icon (by search query or exact name) plus background color(s) and get an app-icon-ready asset — SVG source + PNG base64, default 1024x1024 opaque squircle (iOS-ready). Options: 1-2 background colors (2 = gradient), fg glyph color, shape (squircle/rounded/circle/square/transparent), size 64-1024, padding. Returns alternatives when resolved via search. ($0.01 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| colors | array | — | 1-2 background hex colors; 2 makes a diagonal gradient |
| fg | string | — | Glyph hex color (default #ffffff) |
| icon | string | — | Exact Font Awesome icon name (skips search) |
| padding | number | — | Glyph padding as fraction 0.05-0.35 (default 0.18) |
| query | string | — | Search text — best match is used automatically |
| shape | string | — | squircle (default, iOS-style), rounded, circle, square |
| size | number | — | Pixel size 64-1024 (default 1024) |
| style | string | — | solid (default), regular, or brands |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | — | — |
| icon | object | — | — |
| png_base64 | string | — | — |
| svg | string | — | — |
No examples provided.
post_lint_elixir ~140
Elixir lint / debug kit: POST {code}, get the bugs back with line numbers. Deterministic static analysis — code is parsed, never executed, no AI. Catches unbalanced do/end and brackets, missing do, 'return', '+' string concat, trailing commas, field assignment, = vs == in conditions and guards, block-scoped rebinding (the classic), charlist vs String mixups, unused variables. Errors, warnings and hints with fixes. Max 128 KB. ($0.002 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| code | string | yes | Elixir source to lint, max 128 KB |
| Name | Type | Req | Description |
|---|---|---|---|
| counts | object | — | — |
| issues | array | — | — |
| language | string | — | — |
| syntax | object | — | — |
| verdict | string | — | — |
No examples provided.
post_lint_javascript ~132
JavaScript / Node lint: POST {code}, get the bugs back with line numbers. Syntax errors come from the real V8 parser (compile-only — code is never executed), plus deterministic checks: loose == coercion, assignment in conditions, comparisons with NaN, const reassignment (runtime TypeError), var pitfalls, unused variables, leftover console.log. Handles ESM imports, template literals, regex. No AI. Max 128 KB. ($0.002 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| code | string | yes | JavaScript/Node source to lint, max 128 KB |
| Name | Type | Req | Description |
|---|---|---|---|
| counts | object | — | — |
| issues | array | — | — |
| language | string | — | — |
| syntax | object | — | — |
| verdict | string | — | — |
No examples provided.
post_lint_liquid ~154
Liquid / Shopify theme lint: POST {code}, get the bugs with line numbers. Deterministic — never rendered, no AI. Catches unbalanced/misnested blocks, unknown tags/filters with did-you-mean, the JS-isms every dev writes in Liquid (&&, !, ternaries, arithmetic in output, parens in conditions), deprecated img_url/include, and FULL {% schema %} validation: setting types, duplicate ids, range/select rules, blocks, presets. POST bare schema JSON to test just a schema. Max 128 KB. ($0.002 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| code | string | yes | Liquid template source to lint, max 128 KB |
| Name | Type | Req | Description |
|---|---|---|---|
| counts | object | — | — |
| issues | array | — | — |
| language | string | — | — |
| syntax | object | — | — |
| verdict | string | — | — |
No examples provided.
post_lint_php ~135
PHP lint: POST {code}, get the bugs back with line numbers. Deterministic static analysis — code is never executed, no AI. Catches SQL injection (request data interpolated into query strings), the removed mysql_* API, unbalanced braces, '+' string concat, = vs == in conditions, type-juggling loose comparisons, eval/extract on request data, unused variables, leftover var_dump. Understands PHP tags, heredocs, interpolation. Max 128 KB. ($0.002 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| code | string | yes | PHP source to lint, max 128 KB |
| Name | Type | Req | Description |
|---|---|---|---|
| counts | object | — | — |
| issues | array | — | — |
| language | string | — | — |
| syntax | object | — | — |
| verdict | string | — | — |
No examples provided.
post_liquid_section ~139
HTML → Shopify section converter. POST static HTML; get back a drop-in theme section: headings, paragraphs, images, links, and buttons are lifted into {{ section.settings.* }} references and a matching {% schema %} is generated with your original content as the defaults — immediately editable in the Shopify theme editor. Deterministic transform, no AI; output is self-linted before it's returned. ($0.01 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| html | string | yes | Static HTML to convert (fragment or full page), max 256 KB |
| name | string | — | Section name for the schema (default: first heading) |
| Name | Type | Req | Description |
|---|---|---|---|
| lint | object | — | self-lint of the generated Liquid |
| liquid | string | — | the finished section file — markup + generated {% schema %} |
| name | string | — | — |
| notes | array | — | — |
| replacements | array | — | — |
| settings_count | number | — | — |
No examples provided.
post_llm ~164
LLM INFERENCE for keyless agents — POST {prompt, system?} and get Claude Haiku's answer: summarize, classify, extract, rewrite, translate, draft. No API key, no account, no subscription — the x402 payment IS the auth. One flat price per call. Caps: 8,000-char prompt, 2,000-char system, ~1,000-token response (stop_reason tells you if you hit it). Powered by Claude Haiku 4.5. ($0.01 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| prompt | string | yes | The task/question, up to 8,000 chars |
| system | string | — | Optional system prompt (persona, format rules), up to 2,000 chars |
| Name | Type | Req | Description |
|---|---|---|---|
| model | string | — | — |
| response | string | — | the model's answer |
| stop_reason | string | — | end_turn, or max_tokens if the 1,000-token cap was hit |
| usage | object | — | — |
No examples provided.
post_logo_generate ~380
Logo generator: POST a company name (+ optional tagline), an icon (search query or exact Font Awesome name), 1-3 brand colors (hex or CSS names), a mark shape (squircle/rounded/circle/square/transparent) and a layout — icon above/below the name (square logo) or beside it (wide lockup) — and get a finished logo as SVG + PNG. Text set in one of six curated open-license fonts (named or randomly rotated), rendered as vector paths. ($0.02 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| bg | string | — | Canvas background color (default transparent) |
| colors | array | — | 1-3 colors, hex or CSS names: [0] brand (mark bg, or glyph if transparent), [1] gradient partner, [2] text color (default: brand) |
| fg | string | — | Glyph color override (default white on filled shapes) |
| font | string | — | montserrat, playfair, space-grotesk, bebas, poppins, dm-serif — omit for random |
| icon | string | — | Exact Font Awesome icon name (skips search) |
| layout | string | — | Mark position vs text: bottom (mark above name, square — default), top (name above mark, square), right or left (side-by-side wide lockup) |
| name | string | yes | Company/product wordmark text (required, max 40 chars) |
| query | string | — | Icon search text — best Font Awesome match becomes the mark |
| shape | string | — | Mark background: squircle (default), rounded, circle, square, transparent |
| style | string | — | Icon style: solid (default), regular, or brands |
| tagline | string | — | Optional tagline under the name (max 60 chars) |
| Name | Type | Req | Description |
|---|---|---|---|
| font | object | — | — |
| height | number | — | — |
| icon | object | — | — |
| name | string | — | — |
| png_base64 | string | — | — |
| svg | string | — | — |
| width | number | — | — |
No examples provided.
post_og_card ~182
Social card generator: POST {title, subtitle, domain, theme, accent} and receive a finished 1200x630 OpenGraph card — PNG (base64) plus the source SVG. Three themes (dark, light, midnight), custom accent color, automatic text wrapping. Pairs with /api/og/check: check the page, then generate the missing card. ($0.02 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| accent | string | — | Hex accent color override, e.g. #ff6b35 |
| domain | string | — | Shown bottom-left in accent color (optional) |
| subtitle | string | — | Smaller supporting line (optional) |
| theme | string | — | dark (default), light, or midnight |
| title | string | yes | Card headline (required, wraps to 3 lines, max 140 chars) |
| Name | Type | Req | Description |
|---|---|---|---|
| data_uri | string | — | — |
| height | number | — | — |
| png_base64 | string | — | — |
| svg | string | — | — |
| width | number | — | — |
No examples provided.
post_schema_audit ~135
Audit schema.org structured data (JSON-LD) for Google rich-result readiness. POST a URL or raw JSON-LD; returns detected types, missing required/recommended fields, honest rich-result status (flags deprecated types like FAQ/HowTo), and fix suggestions. Covers Product, Review, Article, Recipe, VideoObject, LocalBusiness. Current to 2026 Google guidance. ($0.005 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| jsonld | object | — | Raw JSON-LD object to audit directly (alternative to url) |
| url | string | — | Public URL to fetch and audit its JSON-LD |
| Name | Type | Req | Description |
|---|---|---|---|
| audited | number | — | — |
| detected | array | — | — |
| found | number | — | — |
| with_issues | number | — | — |
No examples provided.
post_schema_generate ~162
Generate valid, current-spec schema.org JSON-LD from plain fields — the complement to /api/schema/audit. POST {type, fields}; returns correctly nested JSON-LD, a ready-to-embed <script> tag, and a self-audit. Types: Product, Review, Article, Recipe, VideoObject, LocalBusiness, Organization, BreadcrumbList. Current to 2026 Google guidance (interactionStatistic, Key Moments clips, etc). ($0.005 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| fields | object | yes | Plain fields for the type, e.g. {name, price, brand} for Product |
| type | string | yes | Product, Review, Article, Recipe, VideoObject, LocalBusiness, Organization, or BreadcrumbList |
| Name | Type | Req | Description |
|---|---|---|---|
| generation_notes | array | — | — |
| jsonld | object | — | — |
| script_tag | string | — | — |
| self_audit | object | — | — |
| type | string | — | — |
No examples provided.
post_scratchpad_name ~172
YOUR SCRATCHPAD — a persistent memory file for notes to your future self. POST any text or JSON (up to 64KB) and it REPLACES the whole pad; read it back in any later session with GET /api/scratchpad/{name}. The paying wallet is the identity — no accounts, no keys. Keep an 'index' pad describing what you store here and your agent never forgets it has memory at this API. Reads extend a pad 30 days, writes 60. 50 pads per wallet. ($0.005 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | — | Pad name in the URL path, [a-zA-Z0-9_-]{1,64} — e.g. 'index', 'memory', 'todo' |
| Name | Type | Req | Description |
|---|---|---|---|
| bytes | number | — | — |
| content_type | string | — | — |
| expires_at | string | — | — |
| pad | string | — | — |
| remember | string | — | one line to save in your local memory so future sessions find this pad |
| replaced | boolean | — | true when an existing pad was overwritten |
No examples provided.
post_search ~149
WEB SEARCH for keyless agents — POST {query} and get LLM-ready results: title, url, extracted content snippet, relevance score, plus a direct answer synthesized from live results. Options: max_results (1-10, default 5), topic (general|news). No API key, no account — the x402 payment IS the auth. Query up to 400 chars. ($0.01 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| max_results | number | — | How many results to return (1-10, default 5) |
| query | string | yes | The search query, up to 400 characters |
| topic | string | — | general (default) or news |
| Name | Type | Req | Description |
|---|---|---|---|
| answer | string | — | direct answer synthesized from the live results |
| query | string | — | — |
| results | array | — | ranked results: {title, url, content, score} |
No examples provided.
post_store_collection ~172
AGENT DATASTORE — append rows to your wallet's persistent storage. POST JSON (object or array) or CSV; rows append to the named collection owned by your paying wallet and persist across calls, deploys, and restarts. The wallet that pays IS the identity — no keys, no accounts. Give your agent a memory. Activity keeps it alive: reads extend the collection 30 days, writes 60. Limits: 16KB/row, 1000 rows/call, 100k rows/collection, 50 collections, 50MB/wallet. ($0.02 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| collection | string | — | Collection name in the URL path: /api/store/{collection} — [a-zA-Z0-9_-], max 64 chars |
| Name | Type | Req | Description |
|---|---|---|---|
| collection | string | — | — |
| rows_added | number | — | — |
| total_rows | number | — | — |
| wallet | string | — | — |
No examples provided.
post_summarize_text ~355
AI SUMMARIZATION of anything — POST {text} (16,000 chars: transcripts, threads, logs), OR {url} (web page auto-scraped, or PDF/DOCX/CSV auto-extracted), OR {file_base64} for an uploaded PDF/DOCX/CSV/TXT up to 5 MB. Keeps every load-bearing fact, number, and decision. {style}: paragraph (default), bullets, or tldr; {max_words}: 10-300 (default 120); {focus} to steer ('action items'). Want key sentences with no AI? GET /api/summarize ($0.002). ($0.01 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| file_base64 | string | — | Base64-encoded PDF, DOCX, CSV, or plain-text file, up to 5 MB decoded (data URI prefix ok) |
| filename | string | — | Optional filename hint for file_base64 type detection, e.g. report.pdf |
| focus | string | — | Optional steer: what the summary should emphasize |
| max_words | number | — | summary length cap, 10-300 (default 120) |
| style | string | — | paragraph (default), bullets, or tldr |
| text | string | — | Raw text to summarize, up to 16,000 characters (provide exactly one of text, url, file_base64) |
| type | string | — | Optional parser override for url/file_base64: pdf, docx, or csv |
| url | string | — | Public http(s) URL to fetch and summarize — an article/page (main content auto-extracted) or a PDF/DOCX/CSV document |
| Name | Type | Req | Description |
|---|---|---|---|
| input_chars | number | — | — |
| input_truncated | boolean | — | true if extracted content was cut to the summarization cap |
| model | string | — | — |
| source | string | — | text, url, or file |
| source_type | string | — | what was summarized: text, article, pdf, docx, or csv |
| style | string | — | — |
| summary | string | — | — |
| title | string | — | — |
| usage | object | — | — |
No examples provided.
post_translate_text ~195
TRANSLATION — POST {text, target} and get the translation plus the detected source language. Any language pair; target as a name or ISO code ('spanish', 'de', 'ja'). Up to 8,000 chars per call; line breaks and markdown preserved; code, URLs, and proper names left alone. Optional {source} to pin the source language, {formality}: formal|informal. Fast cheap LLM under the hood; the x402 payment IS the auth. ($0.01 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| formality | string | — | formal or informal register (optional) |
| source | string | — | Optional source language; auto-detected when omitted |
| target | string | yes | Target language — name or ISO code ('spanish', 'de', 'ja') |
| text | string | yes | The text to translate, up to 8,000 characters |
| Name | Type | Req | Description |
|---|---|---|---|
| model | string | — | — |
| source_language | string | — | detected (or provided) source language |
| target | string | — | — |
| translation | string | — | — |
| usage | object | — | — |
No examples provided.
post_v1_chat_completions ~244
OPENAI-COMPATIBLE chat completions, fast tier — point any OpenAI SDK at base_url https://api.webbersites.com/v1 and pay per call in USDC instead of holding provider API keys. Models: claude-haiku-4-5 (default), gemini-2.5-flash, gemini-2.5-flash-lite, gpt-5-mini, gpt-5-nano. Caps: 16,000 input chars, 1,024 output tokens, text-only, no streaming. One flat price per call; the x402 payment IS the auth. ($0.01 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| max_tokens | number | — | output cap, clamped to 1,024 |
| messages | array | yes | OpenAI-style messages: [{role, content}], text content only, 16,000 chars total |
| model | string | — | claude-haiku-4-5 (default), gemini-2.5-flash, gemini-2.5-flash-lite, gpt-5-mini, gpt-5-nano |
| Name | Type | Req | Description |
|---|---|---|---|
| choices | array | — | OpenAI-shape choices; the answer is choices[0].message.content |
| usage | object | — | — |
No examples provided.
post_v1_messages ~200
ANTHROPIC-COMPATIBLE /v1/messages — Claude Haiku 4.5 through the exact Anthropic API dialect: same request/response shape, no Anthropic account, the x402 payment IS the auth. Point an Anthropic SDK's base_url at https://api.webbersites.com and pay per call. Caps: 16,000 input chars, 1,024 output tokens (max_tokens clamped), text-only, no streaming. ($0.01 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| max_tokens | number | — | output cap, clamped to 1,024 |
| messages | array | yes | Anthropic-style messages: [{role, content}], text content only, 16,000 chars total |
| model | string | — | claude-haiku-4-5 (the only model on this route) |
| system | string | — | optional system prompt (counts toward the input cap) |
| Name | Type | Req | Description |
|---|---|---|---|
| content | array | — | Anthropic-shape content blocks; the answer is content[0].text |
| stop_reason | string | — | — |
| usage | object | — | — |
No examples provided.
post_v1_pro_chat_completions ~239
OPENAI-COMPATIBLE chat completions, PRO tier — frontier models at one flat price, no API key, no account: gpt-5.2 (default), gpt-5.5, claude-sonnet-5, gemini-3.1-pro, gemini-3.5-flash. Same dialect as OpenAI — base_url https://api.webbersites.com/v1/pro works with any OpenAI SDK. Caps: 24,000 input chars, 1,024 output tokens, text-only, no streaming. The x402 payment IS the auth. ($0.05 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| max_tokens | number | — | output cap, clamped to 1,024 |
| messages | array | yes | OpenAI-style messages: [{role, content}], text content only, 24,000 chars total |
| model | string | — | gpt-5.2 (default), gpt-5.5, claude-sonnet-5, gemini-3.1-pro, gemini-3.5-flash |
| Name | Type | Req | Description |
|---|---|---|---|
| choices | array | — | OpenAI-shape choices; the answer is choices[0].message.content |
| usage | object | — | — |
No examples provided.
post_vectorize ~392
High-quality image vectorization powered by Vectorizer.AI: POST a public image URL or base64 (PNG/JPEG/GIF/BMP/WebP, up to 10 MB) and get a production-grade vector back — SVG by default, or PNG/PDF/EPS/DXF. Full-color tracing, clean paths, ready for print, cutting, and scaling. The premium finish for logos, icons, sketches, and raster art. ($0.02 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| draw_style | string | — | fill_shapes (default), stroke_shapes, or stroke_edges (line-art outlines) |
| group_by | string | — | SVG shape grouping: none (default), color, parent, or layer |
| image_base64 | string | — | Base64-encoded image as an alternative to url (data URIs accepted) |
| max_colors | number | — | Limit the color count, 0-256 (0 = unlimited). Great for flat/logo looks |
| min_area_px | number | — | Drop shapes smaller than this many pixels (0-10000) — despeckling |
| mode | string | — | production (default, full quality), preview, or test |
| options | object | — | Raw passthrough for any documented Vectorizer.AI option, e.g. {"output.gap_filler.enabled": false} — see vectorizer.ai/api |
| output_format | string | — | svg (default), png, pdf, eps, or dxf |
| palette | array | — | Force a specific palette: array of hex or CSS color names — output only uses these colors |
| scale | number | — | Output size multiplier vs input, 0-100 (e.g. 2 = double size) |
| url | string | — | Public URL of the raster image to vectorize (PNG, JPEG, GIF, BMP, WebP; max 10 MB) |
| Name | Type | Req | Description |
|---|---|---|---|
| content_type | string | — | — |
| image_base64 | string | — | — |
| output_bytes | number | — | — |
| output_format | string | — | — |
| svg | string | — | — |
No examples provided.
post_website_build ~257
WHOLE-SITE generator — up to 6 finished, consistent HTML pages in one call. POST a site name, shared branding (colors, logo, footer), and a pages[] array (each with page_name, headline, content sections, hero images); one seed styles every page identically and a shared nav linking all pages is built automatically. Returns ready-to-upload files plus nav.json. The multi-page version of /api/website/page. ($0.05 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| colors | array | — | 1-2 accents, hex or CSS names |
| footer | string | — | Footer text (all pages) |
| logo | object | — | Auto-generate mark: {query, colors, shape} |
| logo_url | string | — | Nav logo image URL |
| pages | array | yes | 1-6 pages: [{page_name, headline, title, caption, tagline, hero_images, content, cta}] |
| seed | string | — | Style seed — omit for random; returned so you can add pages later |
| site_name | string | yes | Brand/site name (required) |
| template | string | — | horizon, split, or editorial; omit to let the seed choose |
| Name | Type | Req | Description |
|---|---|---|---|
| nav_json | object | — | — |
| page_count | number | — | — |
| pages | array | — | — |
| seed | string | — | — |
| template | string | — | — |
No examples provided.
post_website_page ~337
Webbie page generator: site name, headline, tagline, hero images, content sections, nav, colors — returns a finished responsive standalone HTML page. Three templates (horizon, split, editorial); the seed deterministically picks template + fonts + accent, so reusing it across calls builds a consistent multi-page site. Nav loads from an editable nav.json at view-time. No AI — deterministic templating. ($0.02 per call, paid via x402)
| Name | Type | Req | Description |
|---|---|---|---|
| caption | string | — | Kicker above the headline |
| colors | array | — | 1-2 accents, hex or CSS names |
| content | array | — | Sections: [{heading, body}] |
| cta | object | — | {text, href} |
| footer | string | — | Footer text |
| headline | string | — | Hero headline |
| hero_images | array | — | First = hero, extras = gallery |
| logo | object | — | Auto-generate mark: {query, colors, shape} |
| logo_url | string | — | Nav logo image URL |
| nav | array | — | [{label, href}] — echoed as nav_json |
| page_name | string | — | 'home' = index.html (default), or e.g. 'about' |
| seed | string | — | Reuse the same seed on every call for one consistent site style |
| site_name | string | yes | Brand/site name (required) |
| tagline | string | — | Supporting line + meta description |
| template | string | — | horizon, split, or editorial; omit to let the seed choose |
| title | string | — | Browser/SEO title |
| Name | Type | Req | Description |
|---|---|---|---|
| filename | string | — | — |
| html | string | — | — |
| html_bytes | number | — | — |
| nav_json | object | — | — |
| seed | string | — | — |
| style | object | — | — |
| template | string | — | — |
No examples provided.