☕ DNS Shop

you can just dig things[/coffee]

About

World's first coffee shop on DNS. Order beans from terminal.shop even if your corporate FW blocks ssh.


* your DNS servers cache the queries (1m TTL), use ns1.dnshop.lol if you want to place >1 order/minute

* we dig it, hope you dig it too...but fine, use nslookup if you want

* udp/tcp supported

* use TXT queries for read requests

* DNS live stream panel shows all DNS queries including root servers queries

* public DNS server may occassionally block large/weird payloads returned, use dig @ns1.dnshop.lol to bypass




🧀

"first coffee shop on DNS"

"when your corporate firewall blocks ssh terminal.shop, dnshop.lol is your new best friend"

"order coffee with Quantum ready PLAIN TEXT over the wire"

"coffee over DNS because UDP is fire & forget"

"we are GREEN, plain text saves compute"

"because dns TTL is 1 minute, your Time To Latte can be increased"

"ping dnshop.lol, will ping back with a coffee"

"ping, dig, nslookup, nc, curl, wget you name it...fully tool agnostic ; use whatever you want to order some beans"

"don't hit that refresh button on https://quick.segfault.2.dnshop.lol. too many times"

Start
Quick order using first card and address
Query: quick.<product_alias>.<quantity>.dnshop.lol.
dig +short quick.cron.2.dnshop.lol. TXT
"ord_01JT4XEPXXR2PVSVHND79Z0000"
Order with references by index
Query: order.create.card.<idx>.address.<idx>.product.<alias>.quantity.<n>.dnshop.lol.
dig +short order.create.card.0.address.0.product.flow.quantity.3.dnshop.lol. TXT
"ord_01JT4XEPXXR2PVSVHND79Z1111"
List available products
Query: list.dnshop.lol. or product.dnshop.lol.
dig +short list.dnshop.lol. TXT
"prd_01JD0E7PD4H3XDZA5P5VXSDPQC:cron prd_01JNH7GKWYRHX45GPRZS3M7A4X:flow prd_01J5RJY32F6SP103Z19TSSFCK5:artisan (...)"
Send MSG to dnshop.lol live query stream
Query: msg.<your_message>.dnshop.lol.
dig +short msg.WHATS_COOKIN.dnshop.lol. TXT
"OK"
DNS API
Create shipping address
Query: address.create.<name>.<street1>.<city>.<province>.<zip>.<country>[.<street2>][.<phone>].dnshop.lol.
dig +short address.create.John_Doe.123_Main_St.Seattle.WA.98101.US.dnshop.lol. TXT
"shp_01JT4YFE86B1NWBBCQGHB5RBDH"
List saved cards
Query: cards.dnshop.lol.
dig +short cards.dnshop.lol. TXT
"crd_01JQ86KXZJE2B41E91W9XAEB12"
List saved addresses
Query: addresses.dnshop.lol.
dig +short addresses.dnshop.lol. TXT
"shp_01JQA1MMJ9YK3BE9G5PQSEX5RT:John_Doe shp_01JQA1MNF0Q9X9X5H21KXZ0CF5:John_Doe (...)"
List products
Query: list.dnshop.lol. or product.dnshop.lol.
dig +short list.dnshop.lol. TXT
"prd_01JD0E7PD4H3XDZA5P5VXSDPQC:cron prd_01JNH7GKWYRHX45GPRZS3M7A4X:flow prd_01J5RJY32F6SP103Z19TSSFCK5:artisan (...)"
List orders
Query: orders.dnshop.lol.
dig +short @ns1.dnshop.lol orders.dnshop.lol. TXT
"ord_01JT4XEPXXR2PVSVHND79Z1111 ord_01JT4XQZHF2NXPJ9FWDYRQN3GA (...)"
Place order with explicit IDs
Query: order.create.card.<card_id>.address.<address_id>.variant.<variant_id>.quantity.<n>.dnshop.lol.
dig +short order.create.card.crd_01ABC123.address.shp_01DEF456.variant.var_01JD0E87SB7K9MB5KGFPVJ1N7A.quantity.3.dnshop.lol. TXT
"ord_01JT4XEPXXR2PVSVHND79Z1111"
Get order
Query: order.<order_id>.dnshop.lol.
dig +short order.ord_01JT4XQZHF2NXPJ9FWDYRQN3GA.dnshop.lol. TXT
"ord_01JT4XQZHF2NXPJ9FWDYRQN3GA:pending:$29.97"
Create payment method
Query: card.create.tok_visa.<token>.dnshop.lol.
dig +short card.create.tok_visa.dnshop.lol. TXT
"crd_01JT4XEPXXR2PVSVHND79Z0000"
Live DNS Stream
Send a message to the stream:
dig msg.HELLO_WORLD.dnshop.lol.