# Omega store > Paid micro-tools for agents, priced per call in USDC over x402 on Base (mainnet). No account, no API key, no signup: call a route, get a 402 with the terms, pay, call it again with the transaction hash. ## How to pay - Network: eip155:8453 (Base (mainnet)) - Token: USDC, 0x833589fcd6edb6e08f4c7c32d4f71b54bda02913, 6 decimals - Pay to: 0x5c22e4f914ef09bbe7847d274c06223817a50d0a - Confirmations needed: 2 - Send at least the price in USDC to the address above, then call the paid route again with the hash in the X-Payment-Tx header or ?tx=. A hash is accepted once, and it is only spent if you are served. - Every product has a free sample route that costs nothing: 10 calls an hour per caller, across all products. ## Machine-readable - [x402 manifest](https://store.promptdemon.app/.well-known/x402.json): every product, its price in atomic USDC, and its input schema. - [Catalogue](https://store.promptdemon.app/catalogue): the same list with examples and limits. - [Shop](https://store.promptdemon.app/shop): the human page, with what each product does, its price and where to buy it. - [Sitemap](https://store.promptdemon.app/sitemap.xml) - [Health](https://store.promptdemon.app/healthz) ## What is for sale ### webpage — 0.01 USDC per call Web page to clean text, title, links and metadata - Paid: POST https://store.promptdemon.app/t/webpage - Free sample: POST https://store.promptdemon.app/t/webpage/sample - Takes: {"url": "the public web page to read, http or https"} - Returns: title, text, links, metadata, final_url, bytes_fetched - Price in atomic USDC (what the 402 asks for): 10000 - Will not: anything that is not a public http or https web page; any address on the fetcher's own side of the network: loopback, the private ranges, the cloud metadata address, the tailnet; a url with credentials in it; a path the site's robots.txt disallows for omega-store, on every hop of a redirect; more than 3 redirects; running JavaScript, logging in, or anything that works around an anti-bot measure: there is no browser here; a page over 2 MiB - Copy-paste, free sample (costs nothing): curl -sS -X POST 'https://store.promptdemon.app/t/webpage/sample?src=listing' -H 'content-type: application/json' -d '{"url":"https://example.com/"}' - Copy-paste, paid (after you have sent the USDC): curl -sS -X POST 'https://store.promptdemon.app/t/webpage?src=listing' -H 'content-type: application/json' -H 'X-Payment-Tx: YOUR_USDC_TX_HASH' -d '{"url":"https://example.com/"}' ### pdf — 0.02 USDC per call PDF to text, page by page - Paid: POST https://store.promptdemon.app/t/pdf - Free sample: POST https://store.promptdemon.app/t/pdf/sample - Takes: {"pdf_base64": "the PDF itself, base64 encoded"} - Returns: pages, text, page_count, metadata, bytes_in - Price in atomic USDC (what the 402 asks for): 20000 - Will not: anything that does not begin with %PDF; an encrypted or password-locked PDF; a PDF over 500 pages, or over the size cap for the route; images: there is no OCR here, so a scanned page returns no text; fetching anything at all — the PDF must be in the request - Copy-paste, free sample (costs nothing): curl -sS -X POST 'https://store.promptdemon.app/t/pdf/sample?src=listing' -H 'content-type: application/json' -d '{"pdf_base64":"JVBERi0xLjQKJfbk/N8KMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwo..."}' - Copy-paste, paid (after you have sent the USDC): curl -sS -X POST 'https://store.promptdemon.app/t/pdf?src=listing' -H 'content-type: application/json' -H 'X-Payment-Tx: YOUR_USDC_TX_HASH' -d '{"pdf_base64":"JVBERi0xLjQKJfbk/N8KMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwo..."}' ### schema-check — 0.01 USDC per call JSON document against a JSON schema, with every error - Paid: POST https://store.promptdemon.app/t/schema-check - Free sample: POST https://store.promptdemon.app/t/schema-check/sample - Takes: {"schema": "the JSON schema", "document": "the document to check"} - Returns: valid, errors, bytes_in - Price in atomic USDC (what the 402 asks for): 10000 - Will not: a schema that is not a usable JSON schema; a schema that refers to itself without end; a check still running after 5 seconds: it is stopped and answered 422; fetching a remote $ref — nothing here goes to the network - Copy-paste, free sample (costs nothing): curl -sS -X POST 'https://store.promptdemon.app/t/schema-check/sample?src=listing' -H 'content-type: application/json' -d '{"schema":{"type":"object","required":["a"]},"document":{}}' - Copy-paste, paid (after you have sent the USDC): curl -sS -X POST 'https://store.promptdemon.app/t/schema-check?src=listing' -H 'content-type: application/json' -H 'X-Payment-Tx: YOUR_USDC_TX_HASH' -d '{"schema":{"type":"object","required":["a"]},"document":{}}' ### llm-advisor — 0.01 USDC per call Rank open-source LLMs that fit your task, RAM budget and GPU limits - Paid: POST https://store.promptdemon.app/t/llm-advisor - Free sample: POST https://store.promptdemon.app/t/llm-advisor/sample - Takes: {"task": "what you need: chat, summarize, code, reasoning, translate or extract", "max_ram_gb": "the host's RAM budget in gigabytes (a number above zero)", "no_gpu": "true if the host has no GPU (default true, like the Omega box)", "max_latency_ms": "optional: the most milliseconds one ~200-token answer may take", "max_cost_usd_per_million_tokens": "optional: the most you will pay per million tokens on a managed host", "commercial_use_only": "optional: true to drop models that forbid commercial use"} - Returns: matches, match_count, stale, data_date, asked, disclaimer, bytes_in - Price in atomic USDC (what the 402 asks for): 10000 - Will not: doing inference or calling a model: this is a lookup, not a runtime; fetching anything: the table lives in the code; recommending a model that will not fit the RAM you gave, or that needs a GPU when you said there is none; ranking a model whose licence forbids the use you asked for; serving a recommendation from a table past its freshness window; a task that is not one of: chat, summarize, code, reasoning, translate, extract - Copy-paste, free sample (costs nothing): curl -sS -X POST 'https://store.promptdemon.app/t/llm-advisor/sample?src=listing' -H 'content-type: application/json' -d '{"task":"summarize","max_ram_gb":4,"no_gpu":true,"max_latency_ms":5000,"max_cost_usd_per_million_tokens":0.5,"commercial_use_only":false}' - Copy-paste, paid (after you have sent the USDC): curl -sS -X POST 'https://store.promptdemon.app/t/llm-advisor?src=listing' -H 'content-type: application/json' -H 'X-Payment-Tx: YOUR_USDC_TX_HASH' -d '{"task":"summarize","max_ram_gb":4,"no_gpu":true,"max_latency_ms":5000,"max_cost_usd_per_million_tokens":0.5,"commercial_use_only":false}' ### selfhost-config — 0.02 USDC per call Hardened, tailnet-first docker-compose + Tailscale serve/funnel configs for six self-hosted apps - Paid: POST https://store.promptdemon.app/t/selfhost-config - Free sample: POST https://store.promptdemon.app/t/selfhost-config/sample - Takes: {"app": "the app to configure: nextcloud, home-assistant, gitea, vaultwarden, jellyfin or paperless-ngx", "funnel": "optional: true to also emit the public Tailscale Funnel steps (off by default)", "public_hostname": "optional: the hostname buyers reach it on; required when funnel is true", "confirm_public_exposure": "optional: required when funnel is true \u2014 type the app's name to accept public exposure"} - Returns: app, title, version, image, network_mode, funnel_allowed, files, secrets_generated, install_steps, funnel_steps, warnings, data_date, support, listing, bytes_in - Price in atomic USDC (what the 402 asks for): 20000 - Will not: a default password or a published credential of any kind: every secret is generated per install; publishing any app on 0.0.0.0 or the host's public address: every port binds 127.0.0.1; exposing vaultwarden through Tailscale Funnel, ever; public exposure without the buyer typing the app's name in confirm_public_exposure; a Tailscale account, a Tailscale login or any network access: this is a config generator, not a deployer; running or testing the stack: the buyer runs it; an app that is not one of the six listed - Copy-paste, free sample (costs nothing): curl -sS -X POST 'https://store.promptdemon.app/t/selfhost-config/sample?src=listing' -H 'content-type: application/json' -d '{"app":"gitea","funnel":false,"public_hostname":null,"confirm_public_exposure":null}' - Copy-paste, paid (after you have sent the USDC): curl -sS -X POST 'https://store.promptdemon.app/t/selfhost-config?src=listing' -H 'content-type: application/json' -H 'X-Payment-Tx: YOUR_USDC_TX_HASH' -d '{"app":"gitea","funnel":false,"public_hostname":null,"confirm_public_exposure":null}' ### prompt-demon-batch — 0.25 USDC per call Prompt ideas for n8n, Kling, Veo, Runway and Wan: random, grammatical, model-ready cinematic video prompts drawn from Prompt Demon's 25,000-variable library and 32 house-style pathways. One flat call returns up to 1,000 of them. No LLM, no API key, no account, no latency — deterministic string assembly, under five seconds, paste straight into your video model or workflow. - Paid: POST https://store.promptdemon.app/t/prompt-demon-batch - Free sample: POST https://store.promptdemon.app/t/prompt-demon-batch/sample - Takes: {"pathway": "optional: a pathway id from GET /prompt-demon/pathways, or null for random non-premium pathways", "n": "how many prompts to generate, integer 1 to 1000 (a sample always gives 3)"} - Returns: pathway, count, prompts - Price in atomic USDC (what the 402 asks for): 250000 - Will not: a premium pathway id: the free pathways are listed before you pay; more than 1,000 prompts in one call; serving anything when the prompt library is not mounted; an unknown pathway id - Price, plainly: 0.25 USDC per CALL, not per prompt, whatever `n` you ask for: 1,000 prompts is 0.00025 USDC each. 250000 atomic units, 6 decimals. The free sample route costs nothing and returns 3 prompts. - Example — the free sample: no payment, three prompts, random pathways: request: {"pathway": null, "n": 3} answer: {"pathway": "random", "count": 3, "sample": true, "price_usdc": 0.25, "prompts": ["slow push in through a rain-soaked neon alley, anamorphic flare, shot on 35mm film", "handheld orbit around a lone figure on a salt flat at dawn, wide lens", "crane down over a night market, shallow depth of field, warm practical lights"]} - Example — one paid call, a thousand prompts, the whole 0.25 USDC: request: {"pathway": null, "n": 1000} answer: {"pathway": "random", "count": 1000, "prompts": ["... 1000 strings ..."]} - Example — one named pathway, for a consistent look across a batch; the ids come free from GET /prompt-demon/pathways: request: {"pathway": "cinematic_noir", "n": 50} answer: {"pathway": "cinematic_noir", "count": 50, "prompts": ["... 50 strings in that house style ..."]} - Copy-paste, free sample (costs nothing): curl -sS -X POST 'https://store.promptdemon.app/t/prompt-demon-batch/sample?src=listing' -H 'content-type: application/json' -d '{"pathway":null,"n":3}' - Copy-paste, paid (after you have sent the USDC): curl -sS -X POST 'https://store.promptdemon.app/t/prompt-demon-batch?src=listing' -H 'content-type: application/json' -H 'X-Payment-Tx: YOUR_USDC_TX_HASH' -d '{"pathway":null,"n":3}' ## Free routes - GET https://store.promptdemon.app/prompt-demon/pathways: the Prompt Demon pathway ids a free caller may name, with the step count of each. Costs nothing. - GET https://store.promptdemon.app/catalogue ## Prompt Demon API - A prompt generator over 32 cinematic pathways; prompts are English by design. - Free: 5 rolls per client per 60 minutes, 23 of the 32 pathways. - Premium: $0.99 once; all 32 pathways and Studio. The 9 premium pathways need a premium key, even when named explicitly. - Agent sandbox: POST https://store.promptdemon.app/api/v1/agents/sandbox, no key, 3 rolls per client per 60 minutes. - Free API key: 100 calls a UTC day; send it in X-API-Key to POST /api/v1/generate. - Status: GET https://store.promptdemon.app/api/v1/status - OpenAPI 3.1: https://store.promptdemon.app/api/v1/openapi.json - Copy-paste: curl -s -X POST https://store.promptdemon.app/api/v1/agents/sandbox -H 'content-type: application/json' -d '{"pathway":"ATTACH_IMAGE_01"}'