{"store":"Omega","pay_with":{"token":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","token_symbol":"USDC","network":"eip155:8453","network_name":"Base (mainnet)","pay_to":"0x5c22e4f914ef09bbe7847d274c06223817a50d0a","min_confirmations":2,"test_network":false},"how":"Send at least the product's price in USDC on this network to pay_to, then call the paid route with the transaction hash in the X-Payment-Tx header or ?tx=. A hash is accepted once, and it is only spent if you are served. A hash that is not served may be tried 5 times, then it is finished.","products":[{"name":"webpage","title":"Web page to clean text, title, links and metadata","description":"","price_usdc":0.01,"paid_route":"POST /t/webpage","free_route":"POST /t/webpage/sample","takes":{"url":"the public web page to read, http or https"},"returns":["title","text","links","metadata","final_url","bytes_fetched"],"free_sample":"the first 1,000 characters of the text and the first 10 links","needs_network":true,"built_with":"Scrapling (BSD-3-Clause) for the reading; the fetching is ours, one page per call, robots.txt obeyed","max_bytes":{"free":4096,"paid":262144},"example":{"request":{"url":"https://example.com/"},"answer":{"url":"https://example.com/","final_url":"https://example.com/","title":"Example Domain","text":"Example Domain\nThis domain is for use in documentation examples...","links":["https://www.iana.org/domains/example"],"metadata":{},"bytes_fetched":577,"robots":"obeyed"}},"price_curl":"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/\"}'","free_sample_curl":"curl -sS -X POST 'https://store.promptdemon.app/t/webpage/sample?src=listing' -H 'content-type: application/json' -d '{\"url\":\"https://example.com/\"}'","does_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"],"seconds_at_most":20.0},{"name":"pdf","title":"PDF to text, page by page","description":"","price_usdc":0.02,"paid_route":"POST /t/pdf","free_route":"POST /t/pdf/sample","takes":{"pdf_base64":"the PDF itself, base64 encoded"},"returns":["pages","text","page_count","metadata","bytes_in"],"free_sample":"the first page only","needs_network":false,"built_with":"pypdf (BSD-3-Clause). Nothing is fetched: the PDF arrives in the request","max_bytes":{"free":4096,"paid":262144},"example":{"request":{"pdf_base64":"JVBERi0xLjQKJfbk/N8KMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwo..."},"answer":{"page_count":2,"pages_returned":2,"pages":[{"page":1,"text":"the first page's text"},{"page":2,"text":"the second page's text"}],"text":"the first page's text\n\nthe second page's text","metadata":{"producer":"whatever made the PDF"},"bytes_in":551}},"price_curl":"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...\"}'","free_sample_curl":"curl -sS -X POST 'https://store.promptdemon.app/t/pdf/sample?src=listing' -H 'content-type: application/json' -d '{\"pdf_base64\":\"JVBERi0xLjQKJfbk/N8KMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwo...\"}'","does_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"],"seconds_at_most":5.0},{"name":"schema-check","title":"JSON document against a JSON schema, with every error","description":"","price_usdc":0.01,"paid_route":"POST /t/schema-check","free_route":"POST /t/schema-check/sample","takes":{"schema":"the JSON schema","document":"the document to check"},"returns":["valid","errors","bytes_in"],"free_sample":"the first error only, and a smaller document","needs_network":false,"built_with":"jsonschema (MIT). Nothing is fetched. This is the product that has been live since 010","max_bytes":{"free":4096,"paid":262144},"example":{"request":{"schema":{"type":"object","required":["a"]},"document":{}},"answer":{"valid":false,"errors":[{"path":"/","message":"'a' is a required property"}],"bytes_in":48}},"price_curl":"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\":{}}'","free_sample_curl":"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\":{}}'","does_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"],"seconds_at_most":5.0},{"name":"llm-advisor","title":"Rank open-source LLMs that fit your task, RAM budget and GPU limits","description":"","price_usdc":0.01,"paid_route":"POST /t/llm-advisor","free_route":"POST /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"],"free_sample":"the top match's name, RAM and licence only; the reason it fits, its estimated cost, its hosting options and every other match are in the paid call","needs_network":false,"built_with":"ours; a hand-curated table of public model cards (no library, no model call)","max_bytes":{"free":4096,"paid":262144},"example":{"request":{"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},"answer":{"matches":[{"name":"Llama-3.2-1B-Instruct","ram_gb":0.9,"license":"Llama-3.2 Community License","needs_gpu":false,"hosting":["on-device","small-vps","managed"]}],"match_count":4,"stale":false,"data_date":"2026-10-12"}},"price_curl":"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}'","free_sample_curl":"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}'","does_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"],"seconds_at_most":1.0},{"name":"selfhost-config","title":"Hardened, tailnet-first docker-compose + Tailscale serve/funnel configs for six self-hosted apps","description":"","price_usdc":0.02,"paid_route":"POST /t/selfhost-config","free_route":"POST /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 — 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"],"free_sample":"what the bundle is, its pinned version, the security model and the warnings — but not one line of the actual config","needs_network":false,"built_with":"ours; hand-curated pins from each upstream project's GitHub release feed (no library, no model call)","max_bytes":{"free":4096,"paid":262144},"example":{"request":{"app":"gitea","funnel":false,"public_hostname":null,"confirm_public_exposure":null},"answer":{"app":"gitea","version":"v28.1.0","network_mode":"tailnet-only","secrets_generated":["GITEA__security__SECRET_KEY","GITEA__security__INTERNAL_TOKEN","GITEA__server__LFS_JWT_SECRET"],"files":["docker-compose.yml","install.sh","tailscale-serve.sh","README.md"]}},"price_curl":"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}'","free_sample_curl":"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}'","does_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"],"seconds_at_most":1.0},{"name":"prompt-demon-batch","title":"Prompt Demon — up to 1,000 cinematic video prompts for one flat 0.25 USDC call","description":"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.","price_usdc":0.25,"paid_route":"POST /t/prompt-demon-batch","free_route":"POST /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"],"free_sample":"three prompts from the non-premium pathways; the paid call gives up to 1,000 and takes the pathway you choose","needs_network":false,"built_with":"Prompt Demon's own library v9 (32 house-style pathways, about 25,000 variables); the engine is a port of library_manager.dart v9 (6d83f5a). No model call and no network","max_bytes":{"free":4096,"paid":262144},"example":{"request":{"pathway":null,"n":3},"answer":{"pathway":"random","count":3,"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"]}},"price_curl":"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_sample_curl":"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}'","price_note":"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.","examples":[{"note":"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"]}},{"note":"one paid call, a thousand prompts, the whole 0.25 USDC","request":{"pathway":null,"n":1000},"answer":{"pathway":"random","count":1000,"prompts":["... 1000 strings ..."]}},{"note":"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 ..."]}}],"does_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"],"seconds_at_most":5.0}],"free_sample_limit":"10 calls an hour per caller, across all products","about_the_free_sample":"A sample is smaller in every case it can be: it takes a smaller body (4096 bytes against 262144), and it holds back text, pages or links and says how much. For a small valid document the schema check's sample is the same answer the paid call would give — the paid call is for bigger documents, every error at once, and no hourly limit.","when_something_is_wrong":{"shape":{"reason":"one sentence in plain words, always present"},"400":"the request is not what the product takes","402":"payment is needed, has already been used, or did not verify","404":"no product by that name; the list is above","413":"the body or the document is over the limit for that route","415":"that url served something that is not a web page","422":"the work was stopped: it was still running after its limit","429":"the free sample's hourly limit, or a receipt tried too many times","502":"the other end failed, or answered something unusable","504":"the work took longer than the whole-call limit"}}