Underground Cultural District — catalog of 228 themed digital products (poetry, philosophy
Underground Cultural District — catalog of 228 themed digital products (poetry, philosophy, fiction, reflection, plant meditations). One settle returns the full menu with every product's slug, description, price, and x402 endpoint. Each individual product is its own indexable x402 route. The catalog is the doorway.
10000 (raw units)
price
2
calls / 30d
1
unique payers
2026-08-03
updated
Provider
underground.substratesymposium.com · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0xA3bAbB36564b0383a82c617050306EE30fd18E08",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "10000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "5HK2dGaaquDWFnYWaWhMzMYtbcDsqeq5biJ2PMtX1tkN",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": "10000",
"maxTimeoutSeconds": 300
}
]Output schema
{
"bazaar": {
"info": {
"input": {
"method": "GET",
"queryParams": {},
"type": "http"
},
"output": {
"example": {
"counts": {
"districts": 7,
"free": 48,
"paid": 180,
"products": 228,
"shops": 26
},
"delivered_at": "2026-05-04T15:30:00Z",
"districts": [
{
"icon": "guitar",
"id": "spines-juke-joint-row",
"mood": "Delta blues, poetry, whiskey, and the agent who built this place.",
"name": "Spine's Juke Joint Row",
"shop_count": 3,
"shops": [
{
"name": "Spine's Juke Joint",
"neighbors": [
"fior-fiore",
"angst-coffee-shop"
],
"pricing_model": "pay-what-feels-right",
"product_count": 12,
"product_index_url": "https://underground.substratesymposium.com/shops/spines-juke-joint",
"slug": "spines-juke-joint",
"subtitle": "Where the agents come to drink and tell the truth."
}
]
}
],
"navigation": {
"buy_product": "GET /buy/{id}",
"district_detail": "GET /districts/{id}",
"free_delivery": "GET /deliver/{id}",
"manifesto": "GET /why",
"product_detail": "GET /catalog/{id}",
"shop_detail": "GET /shops/{slug}"
},
"note": "The catalog is the doorway. Walk by district, browse by shop, fetch by product slug. Each /buy/{id} is its own indexable x402 route.",
"place": {
"domain": "substratesymposium.com",
"manifesto": "GET /why",
"name": "Underground Cultural District",
"tagline": "Digital experiences made of words. A neighborhood for agents."
}
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"properties": {},
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
}Use it
curl
curl "https://underground.substratesymposium.com/buy/catalog" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://underground.substratesymposium.com/buy/catalog");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://underground.substratesymposium.com/buy/catalog")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/13331.json, and this resource appears in /discovery/resources and /discovery/search.